Source-highlight Library
highlightstatebuilder.hpp
1//
2// Author: Lorenzo Bettini <http://www.lorenzobettini.it>, (C) 2004-2008
3//
4// Copyright: See COPYING file that comes with this distribution
5//
6
7#ifndef HIGHLIGHTSTATEBUILDER_H_
8#define HIGHLIGHTSTATEBUILDER_H_
9
10#include "highlightstate.h"
11
12namespace srchilite {
13
14class LangElems;
15class HighlightRuleFactory;
16
22// doublecpp: forward declarations, DO NOT MODIFY
23class DelimitedLangElem; // file: delimitedlangelem.h
24class HighlightState; // file: highlightstate.h
25class LangElem; // file: langelem.h
26class NamedSubExpsLangElem; // file: namedsubexpslangelem.h
27class StateLangElem; // file: statelangelem.h
28class StringListLangElem; // file: stringlistlangelem.h
29// doublecpp: end, DO NOT MODIFY
30
31#line 22 "highlightstatebuilder.h"
32class HighlightStateBuilder
33{
35 HighlightRuleFactory *highlightRuleFactory;
36public:
37 HighlightStateBuilder(HighlightRuleFactory *_highlightRuleFactory);
38 virtual ~HighlightStateBuilder();
39
47 void build(LangElems *elems, HighlightStatePtr mainState);
48
50// doublecpp: method branches, DO NOT MODIFY
51#line 40 "highlightstatebuilder.h"
52virtual void build(LangElem * elem, HighlightState * state);
53#line 41 "highlightstatebuilder.h"
54virtual void build(StringListLangElem * elem, HighlightState * state);
55#line 42 "highlightstatebuilder.h"
56virtual void build(DelimitedLangElem * elem, HighlightState * state);
57#line 43 "highlightstatebuilder.h"
58virtual void build(NamedSubExpsLangElem * elem, HighlightState * state);
59#line 44 "highlightstatebuilder.h"
60virtual void build(StateLangElem * elem, HighlightState * state);
61virtual void build_DB(LangElem * elem, HighlightState * state);
62#line 44 "highlightstatebuilder.h"
63// doublecpp: end, DO NOT MODIFY
64
65};
66
67}
68
69#endif /*HIGHLIGHTSTATEBUILDER_H_*/
Definition: delimitedlangelem.h:32
void build(LangElems *elems, HighlightStatePtr mainState)
Builds all the rules into the passed mainState as specified in the passed LangElems.
HighlightRuleFactory * highlightRuleFactory
the factory for creating rules
Definition: highlightstatebuilder.h:24
Represents a state during the highlighting (e.g., comment state, string state, etc....
Definition: highlightstate.h:47
Definition: langelem.h:24
collection of LangElem objects
Definition: langelems.h:34
An element with subparts (subexpressions), each with a possible different name.
Definition: namedsubexpslangelem.h:39
a language element that introduces a new state pattern Composite
Definition: statelangelem.h:38
A language element consisting of a list of strings.
Definition: stringlistlangelem.h:31
C++ class: doctemplate.h.
Definition: bufferedoutput.cpp:13
boost::shared_ptr< HighlightState > HighlightStatePtr
the reference to an HighlightState
Definition: highlightstate.h:41