Changes in src/SynTree/BaseSyntaxNode.h [99d4584:39156ed]
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
src/SynTree/BaseSyntaxNode.h
r99d4584 r39156ed 9 9 // Author : Thierry Delisle 10 10 // Created On : Tue Feb 14 07:44:20 2017 11 // Last Modified By : Andrew Beach12 // Last Modified On : Thr Aug 17 13:44:0013 // Update Count : 111 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Wed Jul 10 16:13:49 2019 13 // Update Count : 4 14 14 // 15 15 … … 25 25 class BaseSyntaxNode { 26 26 public: 27 27 static Stats::Counters::SimpleCounter* new_nodes; 28 28 29 29 CodeLocation location; 30 30 31 BaseSyntaxNode() { ++*new_nodes; } 32 BaseSyntaxNode( const BaseSyntaxNode& o ) : location(o.location) { ++*new_nodes; } 33 31 BaseSyntaxNode() { ++*new_nodes; } 32 BaseSyntaxNode( const BaseSyntaxNode & o ) : location(o.location) { ++*new_nodes; } 33 BaseSyntaxNode & operator=( const BaseSyntaxNode & ) = default; 34 34 35 virtual ~BaseSyntaxNode() {} 35 36 … … 37 38 virtual void accept( Visitor & v ) = 0; 38 39 virtual BaseSyntaxNode * acceptMutator( Mutator & m ) = 0; 39 40 41 40 /// Notes: 41 /// * each node is responsible for indenting its children. 42 /// * Expressions should not finish with a newline, since the expression's parent has better information. 42 43 virtual void print( std::ostream & os, Indenter indent = {} ) const = 0; 43 // void print( std::ostream & os, unsigned int indent ) {44 // print( os, Indenter{ indent });45 // }46 44 }; 47 45
Note: See TracChangeset
for help on using the changeset viewer.