Changeset f53acdf8 for src/SynTree/Statement.h
- Timestamp:
- Jul 19, 2019, 2:16:01 PM (6 years ago)
- Branches:
- ADT, arm-eh, ast-experimental, enum, forall-pointer-decay, jacob/cs343-translation, master, new-ast, new-ast-unique-expr, pthread-emulation, qualifiedEnum
- Children:
- 4eb43fa
- Parents:
- 1f1c102 (diff), 8ac3b0e (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the(diff)
links above to see all the changes relative to each parent. - File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
src/SynTree/Statement.h
r1f1c102 rf53acdf8 45 45 virtual Statement * clone() const override = 0; 46 46 virtual void accept( Visitor & v ) override = 0; 47 virtual void accept( Visitor & v ) const override = 0; 47 48 virtual Statement * acceptMutator( Mutator & m ) override = 0; 48 49 virtual void print( std::ostream & os, Indenter indent = {} ) const override; … … 64 65 virtual CompoundStmt * clone() const override { return new CompoundStmt( *this ); } 65 66 virtual void accept( Visitor & v ) override { v.visit( this ); } 67 virtual void accept( Visitor & v ) const override { v.visit( this ); } 66 68 virtual CompoundStmt * acceptMutator( Mutator & m ) override { return m.mutate( this ); } 67 69 virtual void print( std::ostream & os, Indenter indent = {} ) const override; … … 74 76 virtual NullStmt * clone() const override { return new NullStmt( *this ); } 75 77 virtual void accept( Visitor & v ) override { v.visit( this ); } 78 virtual void accept( Visitor & v ) const override { v.visit( this ); } 76 79 virtual NullStmt * acceptMutator( Mutator & m ) override { return m.mutate( this ); } 77 80 virtual void print( std::ostream & os, Indenter indent = {} ) const override; … … 91 94 virtual ExprStmt * clone() const override { return new ExprStmt( *this ); } 92 95 virtual void accept( Visitor & v ) override { v.visit( this ); } 96 virtual void accept( Visitor & v ) const override { v.visit( this ); } 93 97 virtual Statement * acceptMutator( Mutator & m ) override { return m.mutate( this ); } 94 98 virtual void print( std::ostream & os, Indenter indent = {} ) const override; … … 120 124 void set_gotolabels( const std::list<Label> & newValue ) { gotolabels = newValue; } 121 125 122 virtual AsmStmt * clone() const { return new AsmStmt( *this ); } 123 virtual void accept( Visitor & v ) { v.visit( this ); } 124 virtual Statement * acceptMutator( Mutator & m ) { return m.mutate( this ); } 125 virtual void print( std::ostream & os, Indenter indent = {} ) const; 126 virtual AsmStmt * clone() const override { return new AsmStmt( *this ); } 127 virtual void accept( Visitor & v ) override { v.visit( this ); } 128 virtual void accept( Visitor & v ) const override { v.visit( this ); } 129 virtual Statement * acceptMutator( Mutator & m ) override { return m.mutate( this ); } 130 virtual void print( std::ostream & os, Indenter indent = {} ) const override; 126 131 }; 127 132 … … 133 138 virtual ~DirectiveStmt(){} 134 139 135 virtual DirectiveStmt * clone() const { return new DirectiveStmt( *this ); } 136 virtual void accept( Visitor & v ) { v.visit( this ); } 137 virtual Statement * acceptMutator( Mutator & m ) { return m.mutate( this ); } 138 virtual void print( std::ostream & os, Indenter indent = {} ) const; 140 virtual DirectiveStmt * clone() const override { return new DirectiveStmt( *this ); } 141 virtual void accept( Visitor & v ) override { v.visit( this ); } 142 virtual void accept( Visitor & v ) const override { v.visit( this ); } 143 virtual Statement * acceptMutator( Mutator & m ) override { return m.mutate( this ); } 144 virtual void print( std::ostream & os, Indenter indent = {} ) const override; 139 145 }; 140 146 … … 161 167 virtual IfStmt * clone() const override { return new IfStmt( *this ); } 162 168 virtual void accept( Visitor & v ) override { v.visit( this ); } 169 virtual void accept( Visitor & v ) const override { v.visit( this ); } 163 170 virtual Statement * acceptMutator( Mutator & m ) override { return m.mutate( this ); } 164 171 virtual void print( std::ostream & os, Indenter indent = {} ) const override; … … 180 187 181 188 virtual void accept( Visitor & v ) override { v.visit( this ); } 189 virtual void accept( Visitor & v ) const override { v.visit( this ); } 182 190 virtual Statement * acceptMutator( Mutator & m ) override { return m.mutate( this ); } 183 191 … … 208 216 209 217 virtual void accept( Visitor & v ) override { v.visit( this ); } 218 virtual void accept( Visitor & v ) const override { v.visit( this ); } 210 219 virtual Statement * acceptMutator( Mutator & m ) override { return m.mutate( this ); } 211 220 … … 236 245 virtual WhileStmt * clone() const override { return new WhileStmt( *this ); } 237 246 virtual void accept( Visitor & v ) override { v.visit( this ); } 247 virtual void accept( Visitor & v ) const override { v.visit( this ); } 238 248 virtual Statement * acceptMutator( Mutator & m ) override { return m.mutate( this ); } 239 249 virtual void print( std::ostream & os, Indenter indent = {} ) const override; … … 261 271 virtual ForStmt * clone() const override { return new ForStmt( *this ); } 262 272 virtual void accept( Visitor & v ) override { v.visit( this ); } 273 virtual void accept( Visitor & v ) const override { v.visit( this ); } 263 274 virtual Statement * acceptMutator( Mutator & m ) override { return m.mutate( this ); } 264 275 virtual void print( std::ostream & os, Indenter indent = {} ) const override; … … 290 301 virtual BranchStmt * clone() const override { return new BranchStmt( *this ); } 291 302 virtual void accept( Visitor & v ) override { v.visit( this ); } 303 virtual void accept( Visitor & v ) const override { v.visit( this ); } 292 304 virtual Statement * acceptMutator( Mutator & m ) override { return m.mutate( this ); } 293 305 virtual void print( std::ostream & os, Indenter indent = {} ) const override; … … 309 321 virtual ReturnStmt * clone() const override { return new ReturnStmt( *this ); } 310 322 virtual void accept( Visitor & v ) override { v.visit( this ); } 323 virtual void accept( Visitor & v ) const override { v.visit( this ); } 311 324 virtual Statement * acceptMutator( Mutator & m ) override { return m.mutate( this ); } 312 325 virtual void print( std::ostream & os, Indenter indent = {} ) const override; … … 333 346 virtual ThrowStmt * clone() const override { return new ThrowStmt( *this ); } 334 347 virtual void accept( Visitor & v ) override { v.visit( this ); } 348 virtual void accept( Visitor & v ) const override { v.visit( this ); } 335 349 virtual Statement * acceptMutator( Mutator & m ) override { return m.mutate( this ); } 336 350 virtual void print( std::ostream & os, Indenter indent = {} ) const override; … … 356 370 virtual TryStmt * clone() const override { return new TryStmt( *this ); } 357 371 virtual void accept( Visitor & v ) override { v.visit( this ); } 372 virtual void accept( Visitor & v ) const override { v.visit( this ); } 358 373 virtual Statement * acceptMutator( Mutator & m ) override { return m.mutate( this ); } 359 374 virtual void print( std::ostream & os, Indenter indent = {} ) const override; … … 384 399 virtual CatchStmt * clone() const override { return new CatchStmt( *this ); } 385 400 virtual void accept( Visitor & v ) override { v.visit( this ); } 401 virtual void accept( Visitor & v ) const override { v.visit( this ); } 386 402 virtual Statement * acceptMutator( Mutator & m ) override { return m.mutate( this ); } 387 403 virtual void print( std::ostream & os, Indenter indent = {} ) const override; … … 401 417 virtual FinallyStmt * clone() const override { return new FinallyStmt( *this ); } 402 418 virtual void accept( Visitor & v ) override { v.visit( this ); } 419 virtual void accept( Visitor & v ) const override { v.visit( this ); } 403 420 virtual Statement * acceptMutator( Mutator & m ) override { return m.mutate( this ); } 404 421 virtual void print( std::ostream & os, Indenter indent = {} ) const override; … … 438 455 virtual WaitForStmt * clone() const override { return new WaitForStmt( *this ); } 439 456 virtual void accept( Visitor & v ) override { v.visit( this ); } 440 virtual Statement * acceptMutator( Mutator & m ) override { return m.mutate( this ); } 441 virtual void print( std::ostream & os, Indenter indent = {} ) const override; 442 443 }; 444 445 class WithStmt : public Statement { 446 public: 447 std::list< Expression * > exprs; 448 Statement * stmt; 449 450 WithStmt( const std::list< Expression * > & exprs, Statement * stmt ); 451 WithStmt( const WithStmt & other ); 452 virtual ~WithStmt(); 453 454 virtual WithStmt * clone() const override { return new WithStmt( *this ); } 455 virtual void accept( Visitor & v ) override { v.visit( this ); } 456 virtual Statement * acceptMutator( Mutator & m ) override { return m.mutate( this ); } 457 virtual void print( std::ostream & os, Indenter indent = {} ) const override; 458 }; 457 virtual void accept( Visitor & v ) const override { v.visit( this ); } 458 virtual Statement * acceptMutator( Mutator & m ) override { return m.mutate( this ); } 459 virtual void print( std::ostream & os, Indenter indent = {} ) const override; 460 461 }; 462 463 // class WithStmt : public Statement { 464 // public: 465 // std::list< Expression * > exprs; 466 // Statement * stmt; 467 468 // WithStmt( const std::list< Expression * > & exprs, Statement * stmt ); 469 // WithStmt( const WithStmt & other ); 470 // virtual ~WithStmt(); 471 472 // virtual WithStmt * clone() const override { return new WithStmt( *this ); } 473 // virtual void accept( Visitor & v ) override { v.visit( this ); } 474 // virtual void accept( Visitor & v ) const override { v.visit( this ); } 475 // virtual Statement * acceptMutator( Mutator & m ) override { return m.mutate( this ); } 476 // virtual void print( std::ostream & os, Indenter indent = {} ) const override; 477 // }; 459 478 460 479 … … 473 492 virtual DeclStmt * clone() const override { return new DeclStmt( *this ); } 474 493 virtual void accept( Visitor & v ) override { v.visit( this ); } 494 virtual void accept( Visitor & v ) const override { v.visit( this ); } 475 495 virtual Statement * acceptMutator( Mutator & m ) override { return m.mutate( this ); } 476 496 virtual void print( std::ostream & os, Indenter indent = {} ) const override; … … 494 514 virtual ImplicitCtorDtorStmt * clone() const override { return new ImplicitCtorDtorStmt( *this ); } 495 515 virtual void accept( Visitor & v ) override { v.visit( this ); } 516 virtual void accept( Visitor & v ) const override { v.visit( this ); } 496 517 virtual Statement * acceptMutator( Mutator & m ) override { return m.mutate( this ); } 497 518 virtual void print( std::ostream & os, Indenter indent = {} ) const override;
Note:
See TracChangeset
for help on using the changeset viewer.