Changes in src/Parser/ParseNode.h [974906e2:5721a6d]
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
src/Parser/ParseNode.h
r974906e2 r5721a6d 5 5 // file "LICENCE" distributed with Cforall. 6 6 // 7 // ParseNode.h -- 7 // ParseNode.h -- 8 8 // 9 9 // Author : Rodolfo G. Esteves 10 10 // Created On : Sat May 16 13:28:16 2015 11 // Last Modified By : Rob Schluntz12 // Last Modified On : Thu Jan 07 13:17:46201613 // Update Count : 1 7711 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Mon Feb 1 13:32:32 2016 13 // Update Count : 184 14 14 // 15 15 … … 21 21 #include <iterator> 22 22 23 #include " utility.h"23 #include "Common/utility.h" 24 24 #include "Parser/LinkageSpec.h" 25 25 #include "SynTree/Type.h" 26 26 //#include "SynTree/Declaration.h" 27 #include " UniqueName.h"27 #include "Common/UniqueName.h" 28 28 29 29 class ExpressionNode; … … 108 108 109 109 ConstantNode( Type, std::string * ); 110 ConstantNode( const ConstantNode &other ) : value( *new std::string( other.value ) ) {}; 110 111 ~ConstantNode() { delete &value; } 111 112 … … 174 175 class OperatorNode : public ExpressionNode { 175 176 public: 176 enum Type { TupleC, Comma, TupleFieldSel, 177 Cond, NCond, 178 SizeOf, AlignOf, Attr, CompLit, Plus, Minus, Mul, Div, Mod, Or, And, 179 BitOr, BitAnd, Xor, Cast, LShift, RShift, LThan, GThan, LEThan, GEThan, Eq, Neq, 180 Assign, MulAssn, DivAssn, ModAssn, PlusAssn, MinusAssn, LSAssn, RSAssn, AndAssn, 181 ERAssn, OrAssn, Index, FieldSel, PFieldSel, Range, 177 enum Type { TupleC, Comma, TupleFieldSel, // n-adic 178 // triadic 179 Cond, NCond, 180 // diadic 181 SizeOf, AlignOf, OffsetOf, Attr, CompLit, Plus, Minus, Mul, Div, Mod, Or, And, 182 BitOr, BitAnd, Xor, Cast, LShift, RShift, LThan, GThan, LEThan, GEThan, Eq, Neq, 183 Assign, MulAssn, DivAssn, ModAssn, PlusAssn, MinusAssn, LSAssn, RSAssn, AndAssn, ERAssn, OrAssn, 184 Index, FieldSel, PFieldSel, Range, 185 // monadic 182 186 UnPlus, UnMinus, AddressOf, PointTo, Neg, BitNeg, Incr, IncrPost, Decr, DecrPost, LabelAddress, 183 Ctor, Dtor,184 187 }; 185 188 … … 199 202 private: 200 203 Type type; 201 static const char *OpName[];202 204 }; 203 205 … … 307 309 ValofExprNode( const ValofExprNode &other ); 308 310 ~ValofExprNode(); 309 311 310 312 virtual ValofExprNode *clone() const { return new ValofExprNode( *this ); } 311 313 … … 330 332 enum TypeClass { Type, Dtype, Ftype }; 331 333 332 static const char *storageName[]; 334 static const char *storageName[]; 333 335 static const char *qualifierName[]; 334 336 static const char *basicTypeName[]; … … 420 422 class StatementNode : public ParseNode { 421 423 public: 422 enum Type { Exp, If, Switch, Case, Default, Choose, Fallthru, 424 enum Type { Exp, If, Switch, Case, Default, Choose, Fallthru, 423 425 While, Do, For, 424 426 Goto, Continue, Break, Return, Throw, … … 518 520 ExpressionNode *get_designators() const { return designator; } 519 521 520 InitializerNode *set_maybeConstructed( bool value ) { maybeConstructed = value; return this; }521 bool get_maybeConstructed() const { return maybeConstructed; }522 523 522 InitializerNode *next_init() const { return kids; } 524 523 … … 532 531 ExpressionNode *designator; // may be list 533 532 InitializerNode *kids; 534 bool maybeConstructed;535 533 }; 536 534
Note:
See TracChangeset
for help on using the changeset viewer.