Changeset 3f7e12cb for src/SynTree/Initializer.h
- Timestamp:
- Nov 8, 2017, 5:43:33 PM (8 years ago)
- Branches:
- ADT, aaron-thesis, arm-eh, ast-experimental, cleanup-dtors, deferred_resn, demangler, enum, forall-pointer-decay, jacob/cs343-translation, jenkins-sandbox, master, new-ast, new-ast-unique-expr, new-env, no_list, persistent-indexer, pthread-emulation, qualifiedEnum, resolv-new, with_gc
- Children:
- 954908d
- Parents:
- 78315272 (diff), e35f30a (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/Initializer.h
r78315272 r3f7e12cb 37 37 std::list< Expression * > & get_designators() { return designators; } 38 38 39 virtual Designation * clone() const { return new Designation( *this ); };40 virtual void accept( Visitor &v ) { v.visit( this ); }41 virtual Designation * acceptMutator( Mutator &m ) { return m.mutate( this ); }42 virtual void print( std::ostream &os, int indent = 0 ) const;39 virtual Designation * clone() const override { return new Designation( *this ); }; 40 virtual void accept( Visitor &v ) override { v.visit( this ); } 41 virtual Designation * acceptMutator( Mutator &m ) override { return m.mutate( this ); } 42 virtual void print( std::ostream &os, Indenter indent = {} ) const override; 43 43 }; 44 44 … … 54 54 bool get_maybeConstructed() { return maybeConstructed; } 55 55 56 virtual Initializer *clone() const = 0;57 virtual void accept( Visitor &v ) = 0;58 virtual Initializer *acceptMutator( Mutator &m ) = 0;59 virtual void print( std::ostream &os, int indent = 0 ) const= 0;56 virtual Initializer *clone() const override = 0; 57 virtual void accept( Visitor &v ) override = 0; 58 virtual Initializer *acceptMutator( Mutator &m ) override = 0; 59 virtual void print( std::ostream &os, Indenter indent = {} ) const override = 0; 60 60 private: 61 61 bool maybeConstructed; … … 75 75 void set_value( Expression *newValue ) { value = newValue; } 76 76 77 virtual SingleInit *clone() const { return new SingleInit( *this); }78 virtual void accept( Visitor &v ) { v.visit( this ); }79 virtual Initializer *acceptMutator( Mutator &m ) { return m.mutate( this ); }80 virtual void print( std::ostream &os, int indent = 0 ) const;77 virtual SingleInit *clone() const override { return new SingleInit( *this); } 78 virtual void accept( Visitor &v ) override { v.visit( this ); } 79 virtual Initializer *acceptMutator( Mutator &m ) override { return m.mutate( this ); } 80 virtual void print( std::ostream &os, Indenter indent = {} ) const override; 81 81 }; 82 82 … … 103 103 const_iterator end() const { return initializers.end(); } 104 104 105 virtual ListInit *clone() const { return new ListInit( *this ); }106 virtual void accept( Visitor &v ) { v.visit( this ); }107 virtual Initializer *acceptMutator( Mutator &m ) { return m.mutate( this ); }108 virtual void print( std::ostream &os, int indent = 0 ) const;105 virtual ListInit *clone() const override { return new ListInit( *this ); } 106 virtual void accept( Visitor &v ) override { v.visit( this ); } 107 virtual Initializer *acceptMutator( Mutator &m ) override { return m.mutate( this ); } 108 virtual void print( std::ostream &os, Indenter indent = {} ) const override; 109 109 }; 110 110 … … 117 117 Statement * ctor; 118 118 Statement * dtor; 119 // C-style initializer made up of SingleInit and ListInit nodes to use as a fallback 120 // if an appropriate constructor definition is not found by the resolver 121 Initializer * init; 119 122 120 123 ConstructorInit( Statement * ctor, Statement * dtor, Initializer * init ); … … 129 132 Initializer * get_init() const { return init; } 130 133 131 ConstructorInit *clone() const { return new ConstructorInit( *this ); }132 virtual void accept( Visitor &v ) { v.visit( this ); }133 virtual Initializer *acceptMutator( Mutator &m ) { return m.mutate( this ); }134 virtual void print( std::ostream &os, int indent = 0 ) const;134 ConstructorInit *clone() const override { return new ConstructorInit( *this ); } 135 virtual void accept( Visitor &v ) override { v.visit( this ); } 136 virtual Initializer *acceptMutator( Mutator &m ) override { return m.mutate( this ); } 137 virtual void print( std::ostream &os, Indenter indent = {} ) const override; 135 138 136 139 private: 137 // C-style initializer made up of SingleInit and ListInit nodes to use as a fallback138 // if an appropriate constructor definition is not found by the resolver139 Initializer * init;140 140 }; 141 142 std::ostream & operator<<( std::ostream & out, const Initializer * init );143 std::ostream & operator<<( std::ostream & out, const Designation * des );144 141 145 142 // Local Variables: //
Note:
See TracChangeset
for help on using the changeset viewer.