Skip to content

Commit

Permalink
Fixed dependencies and benchmark main() to work with new classnames.
Browse files Browse the repository at this point in the history
  • Loading branch information
schwa committed Jul 23, 2011
1 parent 29f54ff commit e31ce83
Show file tree
Hide file tree
Showing 3 changed files with 112 additions and 78 deletions.
51 changes: 28 additions & 23 deletions Support/NewBenchmark/TouchJSONBenchmark.m
Expand Up @@ -8,39 +8,44 @@

#import <Foundation/Foundation.h>

#import "CJSONDataSerializer.h"
#import "CJSONSerializer.h"
#import "CJSONDeserializer.h"

int main (int argc, const char * argv[])
{
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
{
NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];


NSDictionary *theDictionary = [NSDictionary dictionaryWithObjectsAndKeys:
@"Hello", @"World",
NULL];

CJSONDataSerializer *theSerializer = [CJSONDataSerializer serializer];
CJSONDeserializer *theDeserializer = [CJSONDeserializer deserializer];
NSDictionary *theDictionary = [NSDictionary dictionaryWithObjectsAndKeys:
@"Hello", @"World",
[NSNumber numberWithInt:42], @"Number",
[NSNull null], @"Null",
[NSNumber numberWithBool:YES], @"YES",
[NSNumber numberWithBool:NO], @"NO",
NULL];

CJSONSerializer *theSerializer = [CJSONSerializer serializer];
CJSONDeserializer *theDeserializer = [CJSONDeserializer deserializer];

NSData *theData = [theSerializer serializeObject:theDictionary error:NULL];
NSData *theData = [theSerializer serializeObject:theDictionary error:NULL];
NSLog(@"%@", [[[NSString alloc] initWithData:theData encoding:NSUTF8StringEncoding] autorelease]);

CFAbsoluteTime theStart = CFAbsoluteTimeGetCurrent();
for (int N = 0; N != 2000000; ++N)
{
//// [theDeserizl serializeObject:theDictionary error:NULL];
NSAutoreleasePool *thePool = [[NSAutoreleasePool alloc] init];
[theDeserializer deserialize:theData error:NULL];
[thePool release];
}
CFAbsoluteTime theStart = CFAbsoluteTimeGetCurrent();
for (int N = 0; N != 400000; ++N)
{
//// [theDeserizl serializeObject:theDictionary error:NULL];
NSAutoreleasePool *thePool = [[NSAutoreleasePool alloc] init];
[theDeserializer deserialize:theData error:NULL];
[thePool release];
}



CFAbsoluteTime theEnd = CFAbsoluteTimeGetCurrent();
CFAbsoluteTime theEnd = CFAbsoluteTimeGetCurrent();

NSLog(@"%g", theEnd - theStart);
NSLog(@"%g", theEnd - theStart);


[pool drain];
return 0;
}
[pool drain];
return 0;
}
132 changes: 77 additions & 55 deletions Support/NewBenchmark/TouchJSONBenchmark.xcodeproj/project.pbxproj
Expand Up @@ -7,14 +7,16 @@
objects = {

/* Begin PBXBuildFile section */
4569D4291268250F00AEC287 /* CDataScanner.m in Sources */ = {isa = PBXBuildFile; fileRef = 4569D4111268250F00AEC287 /* CDataScanner.m */; };
4569D42B1268250F00AEC287 /* CDataScanner_Extensions.m in Sources */ = {isa = PBXBuildFile; fileRef = 4569D4171268250F00AEC287 /* CDataScanner_Extensions.m */; };
4569D42C1268250F00AEC287 /* NSCharacterSet_Extensions.m in Sources */ = {isa = PBXBuildFile; fileRef = 4569D4191268250F00AEC287 /* NSCharacterSet_Extensions.m */; };
4569D42D1268250F00AEC287 /* NSDictionary_JSONExtensions.m in Sources */ = {isa = PBXBuildFile; fileRef = 4569D41B1268250F00AEC287 /* NSDictionary_JSONExtensions.m */; };
4569D42E1268250F00AEC287 /* NSScanner_Extensions.m in Sources */ = {isa = PBXBuildFile; fileRef = 4569D41D1268250F00AEC287 /* NSScanner_Extensions.m */; };
4569D4301268250F00AEC287 /* CJSONDeserializer.m in Sources */ = {isa = PBXBuildFile; fileRef = 4569D4221268250F00AEC287 /* CJSONDeserializer.m */; };
4569D4311268250F00AEC287 /* CJSONScanner.m in Sources */ = {isa = PBXBuildFile; fileRef = 4569D4241268250F00AEC287 /* CJSONScanner.m */; };
4569D4321268250F00AEC287 /* CJSONSerializer.m in Sources */ = {isa = PBXBuildFile; fileRef = 4569D4261268250F00AEC287 /* CJSONSerializer.m */; };
459A1F5B13DB5296004E9CFE /* CDataScanner.m in Sources */ = {isa = PBXBuildFile; fileRef = 459A1F4413DB5296004E9CFE /* CDataScanner.m */; };
459A1F5C13DB5296004E9CFE /* CFilteringJSONSerializer.m in Sources */ = {isa = PBXBuildFile; fileRef = 459A1F4713DB5296004E9CFE /* CFilteringJSONSerializer.m */; };
459A1F5D13DB5296004E9CFE /* CJSONDeserializer_BlocksExtensions.m in Sources */ = {isa = PBXBuildFile; fileRef = 459A1F4913DB5296004E9CFE /* CJSONDeserializer_BlocksExtensions.m */; };
459A1F5E13DB5296004E9CFE /* CJSONSerialization.m in Sources */ = {isa = PBXBuildFile; fileRef = 459A1F4B13DB5296004E9CFE /* CJSONSerialization.m */; };
459A1F5F13DB5296004E9CFE /* CJSONSerializedData.m in Sources */ = {isa = PBXBuildFile; fileRef = 459A1F4D13DB5296004E9CFE /* CJSONSerializedData.m */; };
459A1F6013DB5296004E9CFE /* CDataScanner_Extensions.m in Sources */ = {isa = PBXBuildFile; fileRef = 459A1F5013DB5296004E9CFE /* CDataScanner_Extensions.m */; };
459A1F6113DB5296004E9CFE /* NSDictionary_JSONExtensions.m in Sources */ = {isa = PBXBuildFile; fileRef = 459A1F5213DB5296004E9CFE /* NSDictionary_JSONExtensions.m */; };
459A1F6213DB5296004E9CFE /* CJSONDeserializer.m in Sources */ = {isa = PBXBuildFile; fileRef = 459A1F5513DB5296004E9CFE /* CJSONDeserializer.m */; };
459A1F6313DB5296004E9CFE /* CJSONScanner.m in Sources */ = {isa = PBXBuildFile; fileRef = 459A1F5713DB5296004E9CFE /* CJSONScanner.m */; };
459A1F6413DB5296004E9CFE /* CJSONSerializer.m in Sources */ = {isa = PBXBuildFile; fileRef = 459A1F5913DB5296004E9CFE /* CJSONSerializer.m */; };
8DD76F9A0486AA7600D96B5E /* TouchJSONBenchmark.m in Sources */ = {isa = PBXBuildFile; fileRef = 08FB7796FE84155DC02AAC07 /* TouchJSONBenchmark.m */; settings = {ATTRIBUTES = (); }; };
8DD76F9C0486AA7600D96B5E /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 08FB779EFE84155DC02AAC07 /* Foundation.framework */; };
/* End PBXBuildFile section */
Expand All @@ -35,22 +37,27 @@
08FB7796FE84155DC02AAC07 /* TouchJSONBenchmark.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TouchJSONBenchmark.m; sourceTree = "<group>"; };
08FB779EFE84155DC02AAC07 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = "<absolute>"; };
32A70AAB03705E1F00C91783 /* TouchJSONBenchmark_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TouchJSONBenchmark_Prefix.pch; sourceTree = "<group>"; };
4569D4101268250F00AEC287 /* CDataScanner.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CDataScanner.h; sourceTree = "<group>"; };
4569D4111268250F00AEC287 /* CDataScanner.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CDataScanner.m; sourceTree = "<group>"; };
4569D4161268250F00AEC287 /* CDataScanner_Extensions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CDataScanner_Extensions.h; sourceTree = "<group>"; };
4569D4171268250F00AEC287 /* CDataScanner_Extensions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CDataScanner_Extensions.m; sourceTree = "<group>"; };
4569D4181268250F00AEC287 /* NSCharacterSet_Extensions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NSCharacterSet_Extensions.h; sourceTree = "<group>"; };
4569D4191268250F00AEC287 /* NSCharacterSet_Extensions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NSCharacterSet_Extensions.m; sourceTree = "<group>"; };
4569D41A1268250F00AEC287 /* NSDictionary_JSONExtensions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NSDictionary_JSONExtensions.h; sourceTree = "<group>"; };
4569D41B1268250F00AEC287 /* NSDictionary_JSONExtensions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NSDictionary_JSONExtensions.m; sourceTree = "<group>"; };
4569D41C1268250F00AEC287 /* NSScanner_Extensions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NSScanner_Extensions.h; sourceTree = "<group>"; };
4569D41D1268250F00AEC287 /* NSScanner_Extensions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NSScanner_Extensions.m; sourceTree = "<group>"; };
4569D4211268250F00AEC287 /* CJSONDeserializer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CJSONDeserializer.h; sourceTree = "<group>"; };
4569D4221268250F00AEC287 /* CJSONDeserializer.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CJSONDeserializer.m; sourceTree = "<group>"; };
4569D4231268250F00AEC287 /* CJSONScanner.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CJSONScanner.h; sourceTree = "<group>"; };
4569D4241268250F00AEC287 /* CJSONScanner.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CJSONScanner.m; sourceTree = "<group>"; };
4569D4251268250F00AEC287 /* CJSONSerializer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CJSONSerializer.h; sourceTree = "<group>"; };
4569D4261268250F00AEC287 /* CJSONSerializer.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CJSONSerializer.m; sourceTree = "<group>"; };
459A1F4313DB5296004E9CFE /* CDataScanner.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CDataScanner.h; sourceTree = "<group>"; };
459A1F4413DB5296004E9CFE /* CDataScanner.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CDataScanner.m; sourceTree = "<group>"; };
459A1F4613DB5296004E9CFE /* CFilteringJSONSerializer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CFilteringJSONSerializer.h; sourceTree = "<group>"; };
459A1F4713DB5296004E9CFE /* CFilteringJSONSerializer.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CFilteringJSONSerializer.m; sourceTree = "<group>"; };
459A1F4813DB5296004E9CFE /* CJSONDeserializer_BlocksExtensions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CJSONDeserializer_BlocksExtensions.h; sourceTree = "<group>"; };
459A1F4913DB5296004E9CFE /* CJSONDeserializer_BlocksExtensions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CJSONDeserializer_BlocksExtensions.m; sourceTree = "<group>"; };
459A1F4A13DB5296004E9CFE /* CJSONSerialization.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CJSONSerialization.h; sourceTree = "<group>"; };
459A1F4B13DB5296004E9CFE /* CJSONSerialization.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CJSONSerialization.m; sourceTree = "<group>"; };
459A1F4C13DB5296004E9CFE /* CJSONSerializedData.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CJSONSerializedData.h; sourceTree = "<group>"; };
459A1F4D13DB5296004E9CFE /* CJSONSerializedData.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CJSONSerializedData.m; sourceTree = "<group>"; };
459A1F4F13DB5296004E9CFE /* CDataScanner_Extensions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CDataScanner_Extensions.h; sourceTree = "<group>"; };
459A1F5013DB5296004E9CFE /* CDataScanner_Extensions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CDataScanner_Extensions.m; sourceTree = "<group>"; };
459A1F5113DB5296004E9CFE /* NSDictionary_JSONExtensions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NSDictionary_JSONExtensions.h; sourceTree = "<group>"; };
459A1F5213DB5296004E9CFE /* NSDictionary_JSONExtensions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NSDictionary_JSONExtensions.m; sourceTree = "<group>"; };
459A1F5413DB5296004E9CFE /* CJSONDeserializer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CJSONDeserializer.h; sourceTree = "<group>"; };
459A1F5513DB5296004E9CFE /* CJSONDeserializer.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CJSONDeserializer.m; sourceTree = "<group>"; };
459A1F5613DB5296004E9CFE /* CJSONScanner.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CJSONScanner.h; sourceTree = "<group>"; };
459A1F5713DB5296004E9CFE /* CJSONScanner.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CJSONScanner.m; sourceTree = "<group>"; };
459A1F5813DB5296004E9CFE /* CJSONSerializer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CJSONSerializer.h; sourceTree = "<group>"; };
459A1F5913DB5296004E9CFE /* CJSONSerializer.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CJSONSerializer.m; sourceTree = "<group>"; };
459A1F5A13DB5296004E9CFE /* JSONRepresentation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSONRepresentation.h; sourceTree = "<group>"; };
8DD76FA10486AA7600D96B5E /* TouchJSONBenchmark */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = TouchJSONBenchmark; sourceTree = BUILT_PRODUCTS_DIR; };
/* End PBXFileReference section */

Expand All @@ -70,8 +77,8 @@
isa = PBXGroup;
children = (
08FB7795FE84155DC02AAC07 /* Source */,
4569D40F1268250F00AEC287 /* Source */,
08FB779DFE84155DC02AAC07 /* External Frameworks and Libraries */,
459A1F4213DB5296004E9CFE /* Source */,
1AB674ADFE9D54B511CA2CBB /* Products */,
);
name = TouchJSONBenchmark;
Expand Down Expand Up @@ -102,42 +109,55 @@
name = Products;
sourceTree = "<group>";
};
4569D40F1268250F00AEC287 /* Source */ = {
459A1F4213DB5296004E9CFE /* Source */ = {
isa = PBXGroup;
children = (
4569D4101268250F00AEC287 /* CDataScanner.h */,
4569D4111268250F00AEC287 /* CDataScanner.m */,
4569D4151268250F00AEC287 /* Extensions */,
4569D41E1268250F00AEC287 /* JSON */,
459A1F4313DB5296004E9CFE /* CDataScanner.h */,
459A1F4413DB5296004E9CFE /* CDataScanner.m */,
459A1F4513DB5296004E9CFE /* Experimental */,
459A1F4E13DB5296004E9CFE /* Extensions */,
459A1F5313DB5296004E9CFE /* JSON */,
);
name = Source;
path = ../../Source;
sourceTree = SOURCE_ROOT;
sourceTree = "<group>";
};
459A1F4513DB5296004E9CFE /* Experimental */ = {
isa = PBXGroup;
children = (
459A1F4613DB5296004E9CFE /* CFilteringJSONSerializer.h */,
459A1F4713DB5296004E9CFE /* CFilteringJSONSerializer.m */,
459A1F4813DB5296004E9CFE /* CJSONDeserializer_BlocksExtensions.h */,
459A1F4913DB5296004E9CFE /* CJSONDeserializer_BlocksExtensions.m */,
459A1F4A13DB5296004E9CFE /* CJSONSerialization.h */,
459A1F4B13DB5296004E9CFE /* CJSONSerialization.m */,
459A1F4C13DB5296004E9CFE /* CJSONSerializedData.h */,
459A1F4D13DB5296004E9CFE /* CJSONSerializedData.m */,
);
path = Experimental;
sourceTree = "<group>";
};
4569D4151268250F00AEC287 /* Extensions */ = {
459A1F4E13DB5296004E9CFE /* Extensions */ = {
isa = PBXGroup;
children = (
4569D4161268250F00AEC287 /* CDataScanner_Extensions.h */,
4569D4171268250F00AEC287 /* CDataScanner_Extensions.m */,
4569D4181268250F00AEC287 /* NSCharacterSet_Extensions.h */,
4569D4191268250F00AEC287 /* NSCharacterSet_Extensions.m */,
4569D41A1268250F00AEC287 /* NSDictionary_JSONExtensions.h */,
4569D41B1268250F00AEC287 /* NSDictionary_JSONExtensions.m */,
4569D41C1268250F00AEC287 /* NSScanner_Extensions.h */,
4569D41D1268250F00AEC287 /* NSScanner_Extensions.m */,
459A1F4F13DB5296004E9CFE /* CDataScanner_Extensions.h */,
459A1F5013DB5296004E9CFE /* CDataScanner_Extensions.m */,
459A1F5113DB5296004E9CFE /* NSDictionary_JSONExtensions.h */,
459A1F5213DB5296004E9CFE /* NSDictionary_JSONExtensions.m */,
);
path = Extensions;
sourceTree = "<group>";
};
4569D41E1268250F00AEC287 /* JSON */ = {
459A1F5313DB5296004E9CFE /* JSON */ = {
isa = PBXGroup;
children = (
4569D4211268250F00AEC287 /* CJSONDeserializer.h */,
4569D4221268250F00AEC287 /* CJSONDeserializer.m */,
4569D4231268250F00AEC287 /* CJSONScanner.h */,
4569D4241268250F00AEC287 /* CJSONScanner.m */,
4569D4251268250F00AEC287 /* CJSONSerializer.h */,
4569D4261268250F00AEC287 /* CJSONSerializer.m */,
459A1F5413DB5296004E9CFE /* CJSONDeserializer.h */,
459A1F5513DB5296004E9CFE /* CJSONDeserializer.m */,
459A1F5613DB5296004E9CFE /* CJSONScanner.h */,
459A1F5713DB5296004E9CFE /* CJSONScanner.m */,
459A1F5813DB5296004E9CFE /* CJSONSerializer.h */,
459A1F5913DB5296004E9CFE /* CJSONSerializer.m */,
459A1F5A13DB5296004E9CFE /* JSONRepresentation.h */,
);
path = JSON;
sourceTree = "<group>";
Expand Down Expand Up @@ -193,14 +213,16 @@
buildActionMask = 2147483647;
files = (
8DD76F9A0486AA7600D96B5E /* TouchJSONBenchmark.m in Sources */,
4569D4291268250F00AEC287 /* CDataScanner.m in Sources */,
4569D42B1268250F00AEC287 /* CDataScanner_Extensions.m in Sources */,
4569D42C1268250F00AEC287 /* NSCharacterSet_Extensions.m in Sources */,
4569D42D1268250F00AEC287 /* NSDictionary_JSONExtensions.m in Sources */,
4569D42E1268250F00AEC287 /* NSScanner_Extensions.m in Sources */,
4569D4301268250F00AEC287 /* CJSONDeserializer.m in Sources */,
4569D4311268250F00AEC287 /* CJSONScanner.m in Sources */,
4569D4321268250F00AEC287 /* CJSONSerializer.m in Sources */,
459A1F5B13DB5296004E9CFE /* CDataScanner.m in Sources */,
459A1F5C13DB5296004E9CFE /* CFilteringJSONSerializer.m in Sources */,
459A1F5D13DB5296004E9CFE /* CJSONDeserializer_BlocksExtensions.m in Sources */,
459A1F5E13DB5296004E9CFE /* CJSONSerialization.m in Sources */,
459A1F5F13DB5296004E9CFE /* CJSONSerializedData.m in Sources */,
459A1F6013DB5296004E9CFE /* CDataScanner_Extensions.m in Sources */,
459A1F6113DB5296004E9CFE /* NSDictionary_JSONExtensions.m in Sources */,
459A1F6213DB5296004E9CFE /* CJSONDeserializer.m in Sources */,
459A1F6313DB5296004E9CFE /* CJSONScanner.m in Sources */,
459A1F6413DB5296004E9CFE /* CJSONSerializer.m in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
Expand Down

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

0 comments on commit e31ce83

Please sign in to comment.