Merge CPlusPlus::NameId and CPlusPlus::Identifier.

This commit is contained in:
Roberto Raggi
2010-09-02 11:59:01 +02:00
parent 8b2eeb9c5f
commit c12866a467
25 changed files with 69 additions and 131 deletions

View File

@@ -129,14 +129,6 @@ template <> struct Compare<ArrayType>
}
};
template <> struct Compare<NameId>
{
bool operator()(const NameId &name, const NameId &otherName) const
{
return name.identifier() < otherName.identifier();
}
};
template <> struct Compare<DestructorNameId>
{
bool operator()(const DestructorNameId &name, const DestructorNameId &otherName) const
@@ -256,14 +248,6 @@ public:
delete_array_entries(symbols);
}
const NameId *findOrInsertNameId(const Identifier *id)
{
if (! id)
return 0;
return nameIds.intern(NameId(id));
}
template <typename _Iterator>
const TemplateNameId *findOrInsertTemplateNameId(const Identifier *id, _Iterator first, _Iterator last)
{
@@ -498,7 +482,6 @@ public:
// ### replace std::map with lookup tables. ASAP!
// names
Table<NameId> nameIds;
Table<DestructorNameId> destructorNameIds;
Table<OperatorNameId> operatorNameIds;
Table<ConversionNameId> conversionNameIds;
@@ -616,9 +599,6 @@ const NumericLiteral *Control::numericLiteral(const char *chars)
return numericLiteral(chars, length);
}
const NameId *Control::nameId(const Identifier *id)
{ return d->findOrInsertNameId(id); }
const TemplateNameId *Control::templateNameId(const Identifier *id,
const FullySpecifiedType *const args,
unsigned argv)