Changeset b6f2e7ab for src/AST/Expr.hpp
- Timestamp:
- Sep 9, 2024, 5:15:32 PM (37 hours ago)
- Branches:
- master
- Children:
- f5dbc8d
- Parents:
- 5c6d439
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
src/AST/Expr.hpp
r5c6d439 rb6f2e7ab 480 480 class SizeofExpr final : public Expr { 481 481 public: 482 ptr<Type> type; 483 484 SizeofExpr( const CodeLocation & loc, const Type * t ); 485 486 const Expr * accept( Visitor & v ) const override { return v.visit( this ); } 487 private: 488 SizeofExpr * clone() const override { return new SizeofExpr{ *this }; } 489 MUTATE_FRIEND 490 }; 491 492 class CountExpr final : public Expr { 493 public: 482 494 ptr<Expr> expr; 483 495 ptr<Type> type; 484 496 485 SizeofExpr( const CodeLocation & loc, const Expr * e );486 SizeofExpr( const CodeLocation & loc, const Type * t );487 // deliberately no disambiguating overload for nullptr_t488 489 const Expr * accept( Visitor & v ) const override { return v.visit( this ); }490 private:491 SizeofExpr * clone() const override { return new SizeofExpr{ *this }; }492 MUTATE_FRIEND493 };494 495 class CountExpr final : public Expr {496 public:497 ptr<Expr> expr;498 ptr<Type> type;499 500 497 CountExpr( const CodeLocation & loc, const Expr * t ); 501 498 CountExpr( const CodeLocation & loc, const Type * t ); … … 510 507 class AlignofExpr final : public Expr { 511 508 public: 512 ptr<Expr> expr;513 509 ptr<Type> type; 514 510 515 AlignofExpr( const CodeLocation & loc, const Expr * e );516 511 AlignofExpr( const CodeLocation & loc, const Type * t ); 517 // deliberately no disambiguating overload for nullptr_t518 512 519 513 const Expr * accept( Visitor & v ) const override { return v.visit( this ); }
Note: See TracChangeset
for help on using the changeset viewer.