diff --git a/src/shared/cplusplus/Symbols.cpp b/src/shared/cplusplus/Symbols.cpp index df059c9776bdf8de663184d01cf45ff9d46724a0..8f2400976d97522b28035ad9f95eda49e5a67ab1 100644 --- a/src/shared/cplusplus/Symbols.cpp +++ b/src/shared/cplusplus/Symbols.cpp @@ -697,6 +697,36 @@ ObjCClass::ObjCClass(TranslationUnit *translationUnit, unsigned sourceLocation, ObjCClass::~ObjCClass() {} +bool ObjCClass::isInterface() const +{ return _isInterface; } + +void ObjCClass::setInterface(bool isInterface) +{ _isInterface = isInterface; } + +bool ObjCClass::isCategory() const +{ return _categoryName != 0; } + +const Name *ObjCClass::categoryName() const +{ return _categoryName; } + +void ObjCClass::setCategoryName(const Name *categoryName) +{ _categoryName = categoryName; } + +ObjCBaseClass *ObjCClass::baseClass() const +{ return _baseClass; } + +void ObjCClass::setBaseClass(ObjCBaseClass *baseClass) +{ _baseClass = baseClass; } + +unsigned ObjCClass::protocolCount() const +{ return _protocols.size(); } + +ObjCBaseProtocol *ObjCClass::protocolAt(unsigned index) const +{ return _protocols.at(index); } + +void ObjCClass::addProtocol(ObjCBaseProtocol *protocol) +{ _protocols.push_back(protocol); } + FullySpecifiedType ObjCClass::type() const { return FullySpecifiedType(const_cast<ObjCClass *>(this)); } @@ -747,6 +777,15 @@ ObjCProtocol::ObjCProtocol(TranslationUnit *translationUnit, unsigned sourceLoca ObjCProtocol::~ObjCProtocol() {} +unsigned ObjCProtocol::protocolCount() const +{ return _protocols.size(); } + +ObjCBaseProtocol *ObjCProtocol::protocolAt(unsigned index) const +{ return _protocols.at(index); } + +void ObjCProtocol::addProtocol(ObjCBaseProtocol *protocol) +{ _protocols.push_back(protocol); } + FullySpecifiedType ObjCProtocol::type() const { return FullySpecifiedType(const_cast<ObjCProtocol *>(this)); } @@ -973,6 +1012,33 @@ ObjCPropertyDeclaration::ObjCPropertyDeclaration(TranslationUnit *translationUni ObjCPropertyDeclaration::~ObjCPropertyDeclaration() {} +bool ObjCPropertyDeclaration::hasAttribute(int attribute) const +{ return _propertyAttributes & attribute; } + +void ObjCPropertyDeclaration::setAttributes(int attributes) +{ _propertyAttributes = attributes; } + +bool ObjCPropertyDeclaration::hasGetter() const +{ return hasAttribute(Getter); } + +bool ObjCPropertyDeclaration::hasSetter() const +{ return hasAttribute(Setter); } + +const Name *ObjCPropertyDeclaration::getterName() const +{ return _getterName; } + +void ObjCPropertyDeclaration::setGetterName(const Name *getterName) +{ _getterName = getterName; } + +const Name *ObjCPropertyDeclaration::setterName() const +{ return _setterName; } + +void ObjCPropertyDeclaration::setSetterName(const Name *setterName) +{ _setterName = setterName; } + +void ObjCPropertyDeclaration::setType(const FullySpecifiedType &type) +{ _type = type; } + FullySpecifiedType ObjCPropertyDeclaration::type() const { return _type; } diff --git a/src/shared/cplusplus/Symbols.h b/src/shared/cplusplus/Symbols.h index 039e3542e5c6ac3945115ff247a287e5121f18eb..2ea24c539a8906ca9386bedf4450e2d2c634a78a 100644 --- a/src/shared/cplusplus/Symbols.h +++ b/src/shared/cplusplus/Symbols.h @@ -581,8 +581,6 @@ protected: virtual void visitSymbol0(SymbolVisitor *visitor); virtual void accept0(TypeVisitor *visitor); virtual bool matchType0(const Type *otherType, TypeMatcher *matcher) const; - -private: }; class CPLUSPLUS_EXPORT ObjCProtocol: public ScopedSymbol, public Type @@ -591,14 +589,9 @@ public: ObjCProtocol(TranslationUnit *translationUnit, unsigned sourceLocation, const Name *name); virtual ~ObjCProtocol(); - unsigned protocolCount() const - { return _protocols.size(); } - - ObjCBaseProtocol *protocolAt(unsigned index) const - { return _protocols.at(index); } - - void addProtocol(ObjCBaseProtocol *protocol) - { _protocols.push_back(protocol); } + unsigned protocolCount() const; + ObjCBaseProtocol *protocolAt(unsigned index) const; + void addProtocol(ObjCBaseProtocol *protocol); // Symbol's interface virtual FullySpecifiedType type() const; @@ -663,26 +656,19 @@ public: ObjCClass(TranslationUnit *translationUnit, unsigned sourceLocation, const Name *name); virtual ~ObjCClass(); - bool isInterface() const { return _isInterface; } - void setInterface(bool isInterface) { _isInterface = isInterface; } - - bool isCategory() const { return _categoryName != 0; } - const Name *categoryName() const { return _categoryName; } - void setCategoryName(const Name *categoryName) { _categoryName = categoryName; } + bool isInterface() const; + void setInterface(bool isInterface); - ObjCBaseClass *baseClass() const - { return _baseClass; } - void setBaseClass(ObjCBaseClass *baseClass) - { _baseClass = baseClass; } + bool isCategory() const; + const Name *categoryName() const; + void setCategoryName(const Name *categoryName); - unsigned protocolCount() const - { return _protocols.size(); } + ObjCBaseClass *baseClass() const; + void setBaseClass(ObjCBaseClass *baseClass); - ObjCBaseProtocol *protocolAt(unsigned index) const - { return _protocols.at(index); } - - void addProtocol(ObjCBaseProtocol *protocol) - { _protocols.push_back(protocol); } + unsigned protocolCount() const; + ObjCBaseProtocol *protocolAt(unsigned index) const; + void addProtocol(ObjCBaseProtocol *protocol); // Symbol's interface virtual FullySpecifiedType type() const; @@ -795,32 +781,20 @@ public: const Name *name); virtual ~ObjCPropertyDeclaration(); - bool hasAttribute(int attribute) const - { return _propertyAttributes & attribute; } - - void setAttributes(int attributes) - { _propertyAttributes = attributes; } - - bool hasGetter() const - { return hasAttribute(Getter); } + bool hasAttribute(int attribute) const; + void setAttributes(int attributes); - bool hasSetter() const - { return hasAttribute(Setter); } + bool hasGetter() const; + bool hasSetter() const; - const Name *getterName() const - { return _getterName; } + const Name *getterName() const; - void setGetterName(const Name *getterName) - { _getterName = getterName; } + void setGetterName(const Name *getterName); - const Name *setterName() const - { return _setterName; } + const Name *setterName() const; + void setSetterName(const Name *setterName); - void setSetterName(const Name *setterName) - { _setterName = setterName; } - - void setType(const FullySpecifiedType &type) - { _type = type; } + void setType(const FullySpecifiedType &type); // Symbol's interface virtual FullySpecifiedType type() const;