aboutsummaryrefslogtreecommitdiff
path: root/Driver/RewriteTest.cpp
diff options
context:
space:
mode:
authorFariborz Jahanian <fjahanian@apple.com>2007-11-07 00:09:37 +0000
committerFariborz Jahanian <fjahanian@apple.com>2007-11-07 00:09:37 +0000
commit957cf65bf32fe7c84886a2296d0b4ede40029850 (patch)
treee8d68b9596f538cfc3b0e98f12adaa08ecbdda33 /Driver/RewriteTest.cpp
parent07c0fd9fb6e2151a1e31fb1e14b740d8c7de6302 (diff)
Rewrite for properties.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@43791 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'Driver/RewriteTest.cpp')
-rw-r--r--Driver/RewriteTest.cpp16
1 files changed, 15 insertions, 1 deletions
diff --git a/Driver/RewriteTest.cpp b/Driver/RewriteTest.cpp
index e79d830e01..fa4a369f17 100644
--- a/Driver/RewriteTest.cpp
+++ b/Driver/RewriteTest.cpp
@@ -80,6 +80,7 @@ namespace {
void RewriteCategoryDecl(ObjcCategoryDecl *Dcl);
void RewriteProtocolDecl(ObjcProtocolDecl *Dcl);
void RewriteMethods(int nMethods, ObjcMethodDecl **Methods);
+ void RewriteProperties(int nProperties, ObjcPropertyDecl **Properties);
void RewriteFunctionDecl(FunctionDecl *FD);
void RewriteObjcQualifiedInterfaceTypes(
const FunctionTypeProto *proto, FunctionDecl *FD);
@@ -311,6 +312,18 @@ void RewriteTest::RewriteMethods(int nMethods, ObjcMethodDecl **Methods) {
}
}
+void RewriteTest::RewriteProperties(int nProperties, ObjcPropertyDecl **Properties)
+{
+ for (int i = 0; i < nProperties; i++) {
+ ObjcPropertyDecl *Property = Properties[i];
+ SourceLocation Loc = Property->getLocation();
+
+ Rewrite.ReplaceText(Loc, 0, "// ", 3);
+
+ // FIXME: handle properties that are declared across multiple lines.
+ }
+}
+
void RewriteTest::RewriteCategoryDecl(ObjcCategoryDecl *CatDecl) {
SourceLocation LocStart = CatDecl->getLocStart();
@@ -363,7 +376,8 @@ void RewriteTest::RewriteInterfaceDecl(ObjcInterfaceDecl *ClassDecl) {
Rewrite.ReplaceText(LocStart, endBuf-startBuf,
ResultStr.c_str(), ResultStr.size());
-
+ RewriteProperties(ClassDecl->getNumPropertyDecl(),
+ ClassDecl->getPropertyDecl());
RewriteMethods(ClassDecl->getNumInstanceMethods(),
ClassDecl->getInstanceMethods());
RewriteMethods(ClassDecl->getNumClassMethods(),