Changes in src/SynTree/AggregateDecl.cc [d912bed:ac3362c]
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
src/SynTree/AggregateDecl.cc
rd912bed rac3362c 9 9 // Author : Richard C. Bilson 10 10 // Created On : Sun May 17 23:56:39 2015 11 // Last Modified By : Peter A. Buhr12 // Last Modified On : Mon Dec 16 15:07:20 201913 // Update Count : 3111 // Last Modified By : Andrew Beach 12 // Last Modified On : Fri Aug 4 14:22:00 2017 13 // Update Count : 22 14 14 // 15 15 … … 21 21 #include "Common/utility.h" // for printAll, cloneAll, deleteAll 22 22 #include "Declaration.h" // for AggregateDecl, TypeDecl, Declaration 23 #include "Initializer.h" 24 #include "LinkageSpec.h" // for Spec, linkageName, Cforall 23 #include "Parser/LinkageSpec.h" // for Spec, linkageName, Cforall 25 24 #include "Type.h" // for Type, Type::StorageClasses 26 25 27 28 // These must harmonize with the corresponding AggregateDecl::Aggregate enumerations.29 static const char * aggregateNames[] = { "struct", "union", "enum", "exception", "trait", "generator", "coroutine", "monitor", "thread", "NoAggregateName" };30 31 const char * AggregateDecl::aggrString( AggregateDecl::Aggregate aggr ) {32 return aggregateNames[aggr];33 }34 26 35 27 AggregateDecl::AggregateDecl( const std::string &name, const std::list< Attribute * > & attributes, LinkageSpec::Spec linkage ) : Parent( name, Type::StorageClasses(), linkage ), body( false ), attributes( attributes ) { … … 55 47 os << typeString() << " " << name << ":"; 56 48 if ( get_linkage() != LinkageSpec::Cforall ) { 57 os << " " << LinkageSpec:: name( linkage );49 os << " " << LinkageSpec::linkageName( linkage ); 58 50 } // if 59 51 os << " with body " << has_body(); … … 86 78 } 87 79 88 const char * StructDecl::typeString() const { return aggrString( kind ); }80 std::string StructDecl::typeString() const { return "struct"; } 89 81 90 const char * UnionDecl::typeString() const { return aggrString( Union ); }82 std::string UnionDecl::typeString() const { return "union"; } 91 83 92 const char * EnumDecl::typeString() const { return aggrString( Enum ); }84 std::string EnumDecl::typeString() const { return "enum"; } 93 85 94 const char * TraitDecl::typeString() const { return aggrString( Trait ); }86 std::string TraitDecl::typeString() const { return "trait"; } 95 87 96 88 bool EnumDecl::valueOf( Declaration * enumerator, long long int & value ) {
Note:
See TracChangeset
for help on using the changeset viewer.