diff options
Diffstat (limited to '')
-rw-r--r-- | src/builder.h | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/src/builder.h b/src/builder.h index 56a7b07..195296a 100644 --- a/src/builder.h +++ b/src/builder.h | |||
@@ -51,9 +51,23 @@ public: | |||
51 | return rView; | 51 | return rView; |
52 | } | 52 | } |
53 | 53 | ||
54 | void startList( int tokType ); | ||
55 | void setFilter( const char *sRegExp ); | ||
56 | void augmentList( const char *sFrom ); | ||
57 | void addListItem( const char *sItem ); | ||
58 | void clearList(); | ||
59 | void endList(); | ||
60 | |||
61 | void addTarget( int tokType, const char *sName ); | ||
62 | void setTargetInputType( int tokType ); | ||
63 | void addTargetInput( const char *sInput ); | ||
64 | void setTargetRule( const char *sRule ); | ||
65 | void endTarget(); | ||
66 | |||
54 | void setCache( const std::string &sFile ); | 67 | void setCache( const std::string &sFile ); |
55 | void add( Action *pAct ); | 68 | void add( Action *pAct ); |
56 | void add( Command *pCmd ); | 69 | void add( Command *pCmd ); |
70 | void addRegexCommand( int nType, const char *sReg ); | ||
57 | void add( Rule *pRule ); | 71 | void add( Rule *pRule ); |
58 | void add( Target *pTarg ); | 72 | void add( Target *pTarg ); |
59 | void varSet( const char *sName, const char *sValue ); | 73 | void varSet( const char *sName, const char *sValue ); |
@@ -64,6 +78,7 @@ public: | |||
64 | void requires( const char *sBase, const char *sReq ); | 78 | void requires( const char *sBase, const char *sReq ); |
65 | void requiresFromCommand( const char *sBase, const char *sReq ); | 79 | void requiresFromCommand( const char *sBase, const char *sReq ); |
66 | void genRequiresFor( const char *sName, time_t tNewTime ); | 80 | void genRequiresFor( const char *sName, time_t tNewTime ); |
81 | std::list<std::string> findTargets( const char *sRegex ); | ||
67 | void requiresRegexp( bool on ) | 82 | void requiresRegexp( bool on ) |
68 | { | 83 | { |
69 | bReqRegexp = on; | 84 | bReqRegexp = on; |
@@ -119,6 +134,7 @@ public: | |||
119 | 134 | ||
120 | typedef std::map<std::string, std::string> varmap; | 135 | typedef std::map<std::string, std::string> varmap; |
121 | varmap *regexVars( RegExp *re ); | 136 | varmap *regexVars( RegExp *re ); |
137 | void regexVars( RegExp *re, varmap &map ); | ||
122 | std::string varRepl( const char *sSrc, const char *cont, varmap *mExtra ); | 138 | std::string varRepl( const char *sSrc, const char *cont, varmap *mExtra ); |
123 | 139 | ||
124 | private: | 140 | private: |
@@ -159,6 +175,18 @@ private: | |||
159 | 175 | ||
160 | StaticString sCacheFile; | 176 | StaticString sCacheFile; |
161 | class Cache cRequires; | 177 | class Cache cRequires; |
178 | |||
179 | std::list<std::pair<std::string,std::map<std::string,std::string> > > lTok; | ||
180 | bool bTokFiltered; | ||
181 | int nTokType; | ||
182 | RegExp rTok; | ||
183 | |||
184 | int nTargetType; | ||
185 | int nTargetInputType; | ||
186 | std::string sTargetName; | ||
187 | std::list<std::string> lsTargetInput; | ||
188 | std::string sTargetRule; | ||
189 | bool bUsingList; | ||
162 | }; | 190 | }; |
163 | 191 | ||
164 | void cleanList( std::list<std::string> &lst ); | 192 | void cleanList( std::list<std::string> &lst ); |