Introduced CPlusPlus::Template and process the template declarations.

This commit is contained in:
Roberto Raggi
2010-08-11 13:46:32 +02:00
parent 6618a3cd67
commit f74ba9daef
18 changed files with 166 additions and 39 deletions

View File

@@ -168,6 +168,9 @@ public:
/// Returns true if this Symbol is a Namespace.
bool isNamespace() const;
/// Returns true if this Symbol is a Namespace.
bool isTemplate() const;
/// Returns true if this Symbol is a Class.
bool isClass() const;
@@ -220,6 +223,7 @@ public:
virtual const Enum *asEnum() const { return 0; }
virtual const Function *asFunction() const { return 0; }
virtual const Namespace *asNamespace() const { return 0; }
virtual const Template *asTemplate() const { return 0; }
virtual const NamespaceAlias *asNamespaceAlias() const { return 0; }
virtual const Class *asClass() const { return 0; }
virtual const Block *asBlock() const { return 0; }
@@ -243,6 +247,7 @@ public:
virtual Enum *asEnum() { return 0; }
virtual Function *asFunction() { return 0; }
virtual Namespace *asNamespace() { return 0; }
virtual Template *asTemplate() { return 0; }
virtual NamespaceAlias *asNamespaceAlias() { return 0; }
virtual Class *asClass() { return 0; }
virtual Block *asBlock() { return 0; }