diff options
author | Steve Naroff <snaroff@apple.com> | 2009-01-08 20:15:03 +0000 |
---|---|---|
committer | Steve Naroff <snaroff@apple.com> | 2009-01-08 20:15:03 +0000 |
commit | 92f863bffa9d5efe5cc63992e06b268231bc2cc0 (patch) | |
tree | e5a7dfc5a46550231b20642eb4a03b69af386dd8 /lib/AST/DeclObjC.cpp | |
parent | 3e0a540b6d846178857289ec0eb8470a278d11a3 (diff) |
Removed ObjCContainerDecl::getPropertyMethods()...doesn't belong in the AST.
Moved logic to Sema::ProcessPropertyDecl().
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@61936 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/AST/DeclObjC.cpp')
-rw-r--r-- | lib/AST/DeclObjC.cpp | 72 |
1 files changed, 0 insertions, 72 deletions
diff --git a/lib/AST/DeclObjC.cpp b/lib/AST/DeclObjC.cpp index 05d7e11495..2263af7d90 100644 --- a/lib/AST/DeclObjC.cpp +++ b/lib/AST/DeclObjC.cpp @@ -449,78 +449,6 @@ unsigned ObjCContainerDecl::getNumClassMethods() const { return sum; } -/// addPropertyMethods - Goes through list of properties declared in this class -/// and builds setter/getter method declartions depending on the setter/getter -/// attributes of the property. -/// -void ObjCContainerDecl::getPropertyMethods( - ASTContext &Context, ObjCPropertyDecl *property, - ObjCMethodDecl *& GetterDecl, ObjCMethodDecl *&SetterDecl) { - // FIXME: The synthesized property we set here is misleading. We - // almost always synthesize these methods unless the user explicitly - // provided prototypes (which is odd, but allowed). Sema should be - // typechecking that the declarations jive in that situation (which - // it is not currently). - - // Find the default getter and if one not found, add one. - if (!GetterDecl) { - // No instance method of same name as property getter name was found. - // Declare a getter method and add it to the list of methods - // for this class. - GetterDecl = - ObjCMethodDecl::Create(Context, property->getLocation(), - property->getLocation(), - property->getGetterName(), - property->getType(), this, - true, false, true, - (property->getPropertyImplementation() == - ObjCPropertyDecl::Optional) ? - ObjCMethodDecl::Optional : - ObjCMethodDecl::Required); - } - else - // A user declared getter will be synthesize when @synthesize of - // the property with the same name is seen in the @implementation - GetterDecl->setIsSynthesized(); - property->setGetterMethodDecl(GetterDecl); - - // Skip setter if property is read-only. - if (property->isReadOnly()) - return; - - // Find the default setter and if one not found, add one. - if (!SetterDecl) { - // No instance method of same name as property setter name was found. - // Declare a setter method and add it to the list of methods - // for this class. - SetterDecl = - ObjCMethodDecl::Create(Context, property->getLocation(), - property->getLocation(), - property->getSetterName(), - Context.VoidTy, this, - true, false, true, - (property->getPropertyImplementation() == - ObjCPropertyDecl::Optional) ? - ObjCMethodDecl::Optional : - ObjCMethodDecl::Required); - // Invent the arguments for the setter. We don't bother making a - // nice name for the argument. - ParmVarDecl *Argument = ParmVarDecl::Create(Context, - SetterDecl, - SourceLocation(), - property->getIdentifier(), - property->getType(), - VarDecl::None, - 0, 0); - SetterDecl->setMethodParams(&Argument, 1); - } - else - // A user declared setter will be synthesize when @synthesize of - // the property with the same name is seen in the @implementation - SetterDecl->setIsSynthesized(); - property->setSetterMethodDecl(SetterDecl); -} - /// mergeProperties - Adds properties to the end of list of current properties /// for this category. |