Source-highlight Library
/home/bettini/work/source-highlight/src-highlite/lib/srchilite/highlightstatebuilder.hpp
00001 //
00002 // Author: Lorenzo Bettini <http://www.lorenzobettini.it>, (C) 2004-2008
00003 //
00004 // Copyright: See COPYING file that comes with this distribution
00005 //
00006 
00007 #ifndef HIGHLIGHTSTATEBUILDER_H_
00008 #define HIGHLIGHTSTATEBUILDER_H_
00009 
00010 #include "highlightstate.h"
00011 
00012 namespace srchilite {
00013 
00014 class LangElems;
00015 class HighlightRuleFactory;
00016 
00022 // doublecpp: forward declarations, DO NOT MODIFY
00023 class DelimitedLangElem; // file: delimitedlangelem.h
00024 class HighlightState; // file: highlightstate.h
00025 class LangElem; // file: langelem.h
00026 class NamedSubExpsLangElem; // file: namedsubexpslangelem.h
00027 class StateLangElem; // file: statelangelem.h
00028 class StringListLangElem; // file: stringlistlangelem.h
00029 // doublecpp: end, DO NOT MODIFY
00030 
00031 #line 22 "highlightstatebuilder.h"
00032 class HighlightStateBuilder
00033 {
00035     HighlightRuleFactory *highlightRuleFactory;
00036 public:
00037     HighlightStateBuilder(HighlightRuleFactory *_highlightRuleFactory);
00038     virtual ~HighlightStateBuilder();
00039 
00047     void build(LangElems *elems, HighlightStatePtr mainState);
00048 
00050 // doublecpp: method branches, DO NOT MODIFY
00051 #line 40 "highlightstatebuilder.h"
00052 virtual void build(LangElem * elem, HighlightState * state);
00053 #line 41 "highlightstatebuilder.h"
00054 virtual void build(StringListLangElem * elem, HighlightState * state);
00055 #line 42 "highlightstatebuilder.h"
00056 virtual void build(DelimitedLangElem * elem, HighlightState * state);
00057 #line 43 "highlightstatebuilder.h"
00058 virtual void build(NamedSubExpsLangElem * elem, HighlightState * state);
00059 #line 44 "highlightstatebuilder.h"
00060 virtual void build(StateLangElem * elem, HighlightState * state);
00061 virtual void build_DB(LangElem * elem, HighlightState * state);
00062 #line 44 "highlightstatebuilder.h"
00063 // doublecpp: end, DO NOT MODIFY
00064 
00065 };
00066 
00067 }
00068 
00069 #endif /*HIGHLIGHTSTATEBUILDER_H_*/