Changes in src/Parser/ParseNode.h [658fafe4:51e076e]
- File:
-
- 1 edited
-
src/Parser/ParseNode.h (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
-
src/Parser/ParseNode.h
r658fafe4 r51e076e 10 10 // Created On : Sat May 16 13:28:16 2015 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Sun Jul 24 02:17:00201613 // Update Count : 2 6912 // Last Modified On : Fri Aug 5 07:49:32 2016 13 // Update Count : 288 14 14 // 15 15 … … 225 225 }; 226 226 227 Expression *build_cast( TypeValueNode * arg, ExpressionNode *expr_node ); 228 Expression *build_fieldSel( ExpressionNode *expr_node, VarRefNode *member ); 229 Expression *build_pfieldSel( ExpressionNode *expr_node, VarRefNode *member ); 230 Expression *build_addressOf( ExpressionNode *expr_node ); 231 Expression *build_sizeOf( ExpressionNode *expr_node ); 232 Expression *build_alignOf( ExpressionNode *expr_node ); 233 Expression *build_offsetOf( TypeValueNode * arg, VarRefNode *member ); 234 Expression *build_and( ExpressionNode *expr_node1, ExpressionNode *expr_node2 ); 235 Expression *build_and_or( ExpressionNode *expr_node1, ExpressionNode *expr_node2, bool kind ); 236 Expression *build_opr1( OperatorNode::Type op, ExpressionNode *expr_node ); 237 Expression *build_opr2( OperatorNode::Type op, ExpressionNode *expr_node1, ExpressionNode *expr_node2 ); 238 Expression *build_cond( ExpressionNode *expr_node1, ExpressionNode *expr_node2, ExpressionNode *expr_node3 ); 239 Expression *build_comma( ExpressionNode *expr_node1, ExpressionNode *expr_node2 ); 240 241 class CompositeExprNode2 : public ExpressionNode { 242 public: 243 CompositeExprNode2( Expression *expr ); 244 CompositeExprNode2( const CompositeExprNode2 &other ); 245 virtual ~CompositeExprNode2(); 246 247 virtual CompositeExprNode2 *clone() const { return new CompositeExprNode2( *this ); } 248 virtual Expression *build() const { return expr->clone(); } 249 250 virtual void print( std::ostream &, int indent = 0) const; 251 virtual void printOneLine( std::ostream &, int indent = 0) const; 252 private: 253 Expression *expr; 254 }; 255 227 256 class CompositeExprNode : public ExpressionNode { 228 257 public: … … 290 319 private: 291 320 std::list< Label > labels; 321 }; 322 323 class CommaExprNode : public CompositeExprNode { 324 public: 325 CommaExprNode(); 326 CommaExprNode( ExpressionNode * ); 327 CommaExprNode( ExpressionNode *, ExpressionNode * ); 328 CommaExprNode( const CommaExprNode &other ); 329 330 // virtual CommaExprNode *add_to_list( ExpressionNode * ); 331 virtual CommaExprNode *clone() const { return new CommaExprNode( *this ); } 292 332 }; 293 333 … … 522 562 }; 523 563 564 class NullStmtNode : public CompoundStmtNode { 565 public: 566 Statement *build() const; 567 void print( std::ostream &, int indent = 0 ) const; 568 }; 569 524 570 class InitializerNode : public ParseNode { 525 571 public:
Note:
See TracChangeset
for help on using the changeset viewer.