Added Semantic checks for ObjC methods.

This commit is contained in:
Erik Verbruggen
2009-07-31 16:03:48 +02:00
parent b713f1772a
commit 4a0da2c6f2
22 changed files with 281 additions and 35 deletions

View File

@@ -271,6 +271,39 @@ private:
FullySpecifiedType _type;
};
class CPLUSPLUS_EXPORT SelectorNameId: public Name
{
public:
SelectorNameId(Name *const names[],
unsigned nameCount,
bool hasArguments);
virtual ~SelectorNameId();
virtual Identifier *identifier() const;
unsigned nameCount() const;
Name *nameAt(unsigned index) const;
Name *const *names() const;
bool hasArguments() const;
virtual bool isEqualTo(const Name *other) const;
virtual const SelectorNameId *asSelectorNameId() const
{ return this; }
virtual SelectorNameId *asSelectorNameId()
{ return this; }
protected:
virtual void accept0(NameVisitor *visitor);
private:
Name **_names;
unsigned _nameCount;
bool _hasArguments;
};
CPLUSPLUS_END_NAMESPACE
CPLUSPLUS_END_HEADER