Changes in src/Parser/ParseNode.h [658fafe4:9706554]
- File:
-
- 1 edited
-
src/Parser/ParseNode.h (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
-
src/Parser/ParseNode.h
r658fafe4 r9706554 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:00 201613 // Update Count : 2 6912 // Last Modified On : Fri Aug 5 11:42:50 2016 13 // Update Count : 293 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_unary_val( OperatorNode::Type op, ExpressionNode *expr_node ); 237 Expression *build_unary_ptr( OperatorNode::Type op, ExpressionNode *expr_node ); 238 Expression *build_binary_val( OperatorNode::Type op, ExpressionNode *expr_node1, ExpressionNode *expr_node2 ); 239 Expression *build_binary_ptr( OperatorNode::Type op, ExpressionNode *expr_node1, ExpressionNode *expr_node2 ); 240 Expression *build_cond( ExpressionNode *expr_node1, ExpressionNode *expr_node2, ExpressionNode *expr_node3 ); 241 Expression *build_comma( ExpressionNode *expr_node1, ExpressionNode *expr_node2 ); 242 Expression *build_attr( VarRefNode *var, ExpressionNode * expr = 0 ); 243 Expression *build_tuple( ExpressionNode * expr = 0 ); 244 Expression *build_func( ExpressionNode * function, ExpressionNode * expr ); 245 246 class CompositeExprNode2 : public ExpressionNode { 247 public: 248 CompositeExprNode2( Expression *expr ); 249 CompositeExprNode2( const CompositeExprNode2 &other ); 250 virtual ~CompositeExprNode2(); 251 252 virtual CompositeExprNode2 *clone() const { return new CompositeExprNode2( *this ); } 253 virtual Expression *build() const { return expr->clone(); } 254 255 virtual void print( std::ostream &, int indent = 0) const; 256 virtual void printOneLine( std::ostream &, int indent = 0) const; 257 private: 258 Expression *expr; 259 }; 260 227 261 class CompositeExprNode : public ExpressionNode { 228 262 public: … … 290 324 private: 291 325 std::list< Label > labels; 326 }; 327 328 class CommaExprNode : public CompositeExprNode { 329 public: 330 CommaExprNode(); 331 CommaExprNode( ExpressionNode * ); 332 CommaExprNode( ExpressionNode *, ExpressionNode * ); 333 CommaExprNode( const CommaExprNode &other ); 334 335 // virtual CommaExprNode *add_to_list( ExpressionNode * ); 336 virtual CommaExprNode *clone() const { return new CommaExprNode( *this ); } 292 337 }; 293 338 … … 522 567 }; 523 568 569 class NullStmtNode : public CompoundStmtNode { 570 public: 571 Statement *build() const; 572 void print( std::ostream &, int indent = 0 ) const; 573 }; 574 524 575 class InitializerNode : public ParseNode { 525 576 public:
Note:
See TracChangeset
for help on using the changeset viewer.