153 |
147 |
154 // ============================================================================ |
148 // ============================================================================ |
155 // |
149 // |
156 class BotscriptParser |
150 class BotscriptParser |
157 { |
151 { |
158 PROPERTY (public, bool, ReadOnly, BOOL_OPS, STOCK_WRITE) |
152 PROPERTY (public, bool, IsReadOnly, SetReadOnly, STOCK_WRITE) |
159 |
153 |
160 public: |
154 public: |
161 enum EReset |
155 enum EReset |
162 { |
156 { |
163 eNoReset, |
157 eNoReset, |
174 void PushScope (EReset reset = SCOPE_Reset); |
168 void PushScope (EReset reset = SCOPE_Reset); |
175 DataBuffer* ParseStatement(); |
169 DataBuffer* ParseStatement(); |
176 void AddSwitchCase (DataBuffer* b); |
170 void AddSwitchCase (DataBuffer* b); |
177 void CheckToplevel(); |
171 void CheckToplevel(); |
178 void CheckNotToplevel(); |
172 void CheckNotToplevel(); |
179 bool TokenIs (TokenType a); |
173 bool TokenIs (ETokenType a); |
180 String GetTokenString(); |
174 String GetTokenString(); |
181 String DescribePosition() const; |
175 String DescribePosition() const; |
182 void WriteToFile (String outfile); |
176 void WriteToFile (String outfile); |
183 Variable* FindVariable (const String& name); |
177 Variable* FindVariable (const String& name); |
184 bool IsInGlobalState() const; |
178 bool IsInGlobalState() const; |