Changes in src/SymTab/Mangler.h [78dd0da:69911c11]
- File:
-
- 1 edited
-
src/SymTab/Mangler.h (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
src/SymTab/Mangler.h
r78dd0da r69911c11 25 25 class Mangler : public Visitor { 26 26 public: 27 /// Mangle syntax tree object; primary interface to clients 27 28 template< typename SynTreeClass > 28 static std::string mangle( SynTreeClass *decl, bool mangleOverridable = true, bool includeQualifiers = true ); // interface to clients 29 static std::string mangle( SynTreeClass *decl, bool mangleOverridable = true ); 30 /// Mangle a type name; secondary interface 31 static std::string mangleType( Type* ty ); 29 32 30 33 virtual void visit( ObjectDecl *declaration ); … … 51 54 bool isTopLevel; ///< Is the Mangler at the top level 52 55 bool mangleOverridable; ///< Specially mangle overridable built-in methods 53 bool includeQualifiers; ///< Include type qualifiers in mangled name56 bool typeMode; ///< Produce a unique mangled name for a type 54 57 55 Mangler( bool mangleOverridable, bool includeQualifiers);58 Mangler( bool mangleOverridable, bool typeMode ); 56 59 Mangler( const Mangler & ); 57 60 58 61 void mangleDecl( DeclarationWithType *declaration ); 59 62 void mangleRef( ReferenceToType *refType, std::string prefix ); 63 void mangleGenericRef( ReferenceToType *refType, std::string prefix ); 60 64 61 65 void printQualifiers( Type *type ); … … 63 67 64 68 template< typename SynTreeClass > 65 std::string Mangler::mangle( SynTreeClass *decl, bool mangleOverridable , bool includeQualifiers) {66 Mangler mangler( mangleOverridable, includeQualifiers);69 std::string Mangler::mangle( SynTreeClass *decl, bool mangleOverridable ) { 70 Mangler mangler( mangleOverridable, false ); 67 71 maybeAccept( decl, mangler ); 68 72 return mangler.get_mangleName();
Note:
See TracChangeset
for help on using the changeset viewer.