Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Browse files

Restructed project, added building of static library, added DTVersion…

… class.
  • Loading branch information...
commit 1f88329c4dccea6809287653c4d0169b1e92926d 1 parent 436d98d
@Cocoanetics authored
View
0  DTFoundation/DTFoundation-Info.plist → Core/DTFoundation-Info.plist
File renamed without changes
View
0  DTFoundation/DTFoundation-Prefix.pch → Core/DTFoundation-Prefix.pch
File renamed without changes
View
7 Core/DTFoundation.h
@@ -0,0 +1,7 @@
+// Classes
+#import "DTVersion.h"
+
+// Categories
+#import "NSString+DTFormatNumbers.h"
+#import "NSURL+DTAppLinks.h"
+#import "NSURL+DTPrefLinks.h"
View
114 Core/Source/DTVersion.h
@@ -0,0 +1,114 @@
+//
+// DTVersion.h
+// DTFoundation
+//
+// Created by Oliver Drobnik on 11/25/11.
+// Copyright (c) 2011 Cocoanetics. All rights reserved.
+//
+
+#import <Foundation/Foundation.h>
+
+/**
+ Class that represents a version number comprised of major, minor and maintenance number separarated by dots. For example "1.2.2".
+
+ This encapsulation simplifies comparing versions against each other. Sub-numbers that are omitted on creating a `DTVersion` are assumed to be 0.
+ */
+@interface DTVersion : NSObject
+{
+ NSUInteger _majorVersion;
+ NSUInteger _minorVersion;
+ NSUInteger _maintenanceVersion;
+}
+
+/**
+ The receiver's major version number.
+ */
+@property (nonatomic, readonly) NSUInteger majorVersion;
+
+/**
+ The receiver's minor version number.
+ */
+@property (nonatomic, readonly) NSUInteger minorVersion;
+
+/**
+ The receiver's maintenance version number.
+ */
+@property (nonatomic, readonly) NSUInteger maintenanceVersion;
+
+/**-------------------------------------------------------------------------------------
+ @name Creating Versions
+ ---------------------------------------------------------------------------------------
+ */
+
+/**
+ creates and returns a `DTVersion` object initialized using the provided string
+
+ @param versionString A string with a version number.
+ @returns A DTVersion object or `nil` if the string is not a valid version number
+ @see initWithMajor:minor:maintenance:
+ */
++ (DTVersion *)versionWithString:(NSString *)versionString;
+
+/**
+ creates and retuns a `DTVersion` object initialized with the version information of the current application
+
+ @returns A DTVersion object or `nil` if the string of the current application is not a valid version number
+ */
++ (DTVersion *)appBundleVersion;
+
+/**
+ creates and retuns a `DTVersion` object initialized with the version information of the operating system
+
+ @returns A `DTVersion` object or `nil` if the string of the current application is not a valid version number
+ */
++ (DTVersion *)osVersion;
+
+/**
+ creates and returns a `DTVersion` object initialized using the provided string
+
+ @param major The major version number of the version.
+ @param minor The minor version number of the version.
+ @param maintenance The maintenance version number of the version.
+ @returns A `DTVersion` object or `nil` if the string is not a valid version number
+ */
+- (DTVersion *)initWithMajor:(NSUInteger)major minor:(NSUInteger)minor maintenance:(NSUInteger)maintenance;
+
+/**-------------------------------------------------------------------------------------
+ @name Comparing Versions
+ ---------------------------------------------------------------------------------------
+ */
+
+/**
+ Returns a Boolean value that indicates whether a given `DTVersion` is equal to the receiver.
+
+ @param version The `DTVersion` instance to compare against.
+ @returns `YES` if the other object is equal to the receiver
+ */
+- (BOOL) isEqualToVersion:(DTVersion *)version;
+
+/**
+ Returns a Boolean value that indicates whether a given string is equal to the receiver.
+
+ @param versionString The string to compare the receiver against.
+ @returns `YES` if the other object is equal to the receiver
+ */
+- (BOOL) isEqualToString:(NSString *)versionString;
+
+/**
+ Returns a Boolean value that indicates whether a given object is equal to the receiver.
+
+ If the other object is an `NSString` then isEqualToString: is called. If it is a `DTVersion` instance isEqualToVersion: is called.
+ @param object An NSString or `DTVersion` to compare against.
+ @returns `YES` if the other object is equal to the receiver
+ */
+- (BOOL) isEqual:(id)object;
+
+/**
+Compares the receiver to object.
+
+ @param version The `DTVersion` instance to compare the receiver with.
+ @returns `NSOrderedAscending` if the receiver precedes object in version ordering, `NSOrderedSame` if they are equal, and `NSOrderedDescending` if the receiver is higher than object.
+ */
+- (NSComparisonResult)compare:(DTVersion *)version;
+
+@end
View
177 Core/Source/DTVersion.m
@@ -0,0 +1,177 @@
+//
+// DTVersion.m
+// DTFoundation
+//
+// Created by Oliver Drobnik on 11/25/11.
+// Copyright (c) 2011 Cocoanetics. All rights reserved.
+//
+
+#import "DTVersion.h"
+#import <UIKit/UIKit.h>
+
+@implementation DTVersion
+
+- (DTVersion *)initWithMajor:(NSUInteger)majorVersion minor:(NSUInteger)minorVersion maintenance:(NSUInteger)maintenanceVersion
+{
+ self = [super init];
+ if (self)
+ {
+ _majorVersion = majorVersion;
+ _minorVersion = minorVersion;
+ _maintenanceVersion = maintenanceVersion;
+ }
+ return self;
+}
+
++ (DTVersion *)versionWithString:(NSString*)versionString
+{
+ if (!versionString)
+ {
+ return nil;
+ }
+
+ NSInteger major = 0;
+ NSInteger minor = 0;
+ NSInteger maintenance = 0;
+
+ int i=0;
+ NSScanner *scanner = [NSScanner scannerWithString:versionString];
+ [scanner setCharactersToBeSkipped:[NSCharacterSet characterSetWithCharactersInString:@"."]];
+
+ while (i<3 && ![scanner isAtEnd])
+ {
+ switch (i)
+ {
+ case 0:
+ {
+ if (![scanner scanInteger:&major])
+ {
+ return nil;
+ }
+ break;
+ }
+
+ case 1:
+ {
+ if (![scanner scanInteger:&minor])
+ {
+ return nil;
+ };
+ break;
+ }
+
+ case 2:
+ {
+ if (![scanner scanInteger:&maintenance])
+ {
+ return nil;
+ };
+ break;
+ }
+
+ default:
+ {
+ // ignore suffix
+ break;
+ }
+ }
+ i++;
+ }
+
+ if (major >= 0 &&
+ minor >= 0 &&
+ maintenance >= 0)
+ {
+ return [[DTVersion alloc] initWithMajor:major minor:minor maintenance:maintenance];
+ }
+
+ return nil;
+}
+
++ (DTVersion*)appBundleVersion
+{
+ NSString *version = [[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleVersion"];
+ DTVersion* retVersion = [DTVersion versionWithString:version];
+
+ return retVersion;
+}
+
++ (DTVersion *)osVersion
+{
+ NSString *version = [[UIDevice currentDevice] systemVersion];
+ return [DTVersion versionWithString:version];
+}
+
+- (BOOL) isEqualToVersion:(DTVersion *)version
+{
+ return (self.majorVersion == version.majorVersion) && (self.minorVersion == version.minorVersion) && (self.maintenanceVersion == version.maintenanceVersion);
+}
+
+- (BOOL) isEqualToString:(NSString *)versionString
+{
+ DTVersion *versionToTest = [DTVersion versionWithString:versionString];
+ return [self isEqualToVersion:versionToTest];
+}
+
+
+- (BOOL) isEqual:(id)object
+{
+ if ([object isKindOfClass:[DTVersion class]])
+ {
+ return [self isEqualToVersion:(DTVersion*)object];
+ }
+ if ([object isKindOfClass:[NSString class]])
+ {
+ return [self isEqualToString:(NSString*)object];
+ }
+ return NO;
+}
+
+- (NSComparisonResult)compare:(DTVersion *)version
+{
+ if (version == nil)
+ {
+ return NSOrderedDescending;
+ }
+
+ if (self.majorVersion < version.majorVersion)
+ {
+ return NSOrderedAscending;
+ }
+ if (self.majorVersion > version.majorVersion)
+ {
+ return NSOrderedDescending;
+ }
+ if (self.minorVersion < version.minorVersion)
+ {
+ return NSOrderedAscending;
+ }
+ if (self.minorVersion > version.minorVersion)
+ {
+ return NSOrderedDescending;
+ }
+ if (self.maintenanceVersion < version.maintenanceVersion)
+ {
+ return NSOrderedAscending;
+ }
+ if (self.maintenanceVersion > version.maintenanceVersion)
+ {
+ return NSOrderedDescending;
+ }
+
+ return NSOrderedSame;
+}
+
+
+- (NSString *)description
+{
+ return [NSString stringWithFormat:@"%d.%d.%d", _majorVersion, _minorVersion, _maintenanceVersion];
+}
+
+
+
+@synthesize majorVersion = _majorVersion;
+@synthesize minorVersion = _minorVersion;
+@synthesize maintenanceVersion = _maintenanceVersion;
+
+@end
View
0  DTFoundation/LoadableCategory.h → Core/Source/LoadableCategory.h
File renamed without changes
View
0  DTFoundation/NSString+DTFormatNumbers.h → Core/Source/NSString+DTFormatNumbers.h
File renamed without changes
View
0  DTFoundation/NSString+DTFormatNumbers.m → Core/Source/NSString+DTFormatNumbers.m
File renamed without changes
View
0  DTFoundation/NSURL+DTAppLinks.h → Core/Source/NSURL+DTAppLinks.h
File renamed without changes
View
0  DTFoundation/NSURL+DTAppLinks.m → Core/Source/NSURL+DTAppLinks.m
File renamed without changes
View
0  DTFoundation/NSURL+DTPrefLinks.h → Core/Source/NSURL+DTPrefLinks.h
File renamed without changes
View
0  DTFoundation/NSURL+DTPrefLinks.m → Core/Source/NSURL+DTPrefLinks.m
File renamed without changes
View
268 DTFoundation.xcodeproj/project.pbxproj
@@ -21,35 +21,62 @@
/* End PBXAggregateTarget section */
/* Begin PBXBuildFile section */
- A7577A761483F99B00076E2B /* NSString+DTFormatNumbers.m in Sources */ = {isa = PBXBuildFile; fileRef = A7F4DFD9147FB69400F4059A /* NSString+DTFormatNumbers.m */; };
- A7577A771483F99B00076E2B /* NSURL+DTAppLinks.m in Sources */ = {isa = PBXBuildFile; fileRef = A7F4DFF3147FC5E600F4059A /* NSURL+DTAppLinks.m */; };
- A7577A781483F99B00076E2B /* NSURL+DTPrefLinks.m in Sources */ = {isa = PBXBuildFile; fileRef = A7E1404214839F95001E221E /* NSURL+DTPrefLinks.m */; };
- A7577A7A1483F9A600076E2B /* NSString+DTFormatNumbers.h in Headers */ = {isa = PBXBuildFile; fileRef = A7F4DFD8147FB69400F4059A /* NSString+DTFormatNumbers.h */; settings = {ATTRIBUTES = (Public, ); }; };
- A7577A7B1483F9A600076E2B /* NSURL+DTAppLinks.h in Headers */ = {isa = PBXBuildFile; fileRef = A7F4DFF2147FC5E600F4059A /* NSURL+DTAppLinks.h */; settings = {ATTRIBUTES = (Public, ); }; };
- A7577A7C1483F9A600076E2B /* NSURL+DTPrefLinks.h in Headers */ = {isa = PBXBuildFile; fileRef = A7E1404114839F95001E221E /* NSURL+DTPrefLinks.h */; settings = {ATTRIBUTES = (Public, ); }; };
- A7577A801483FA0C00076E2B /* DTFoundation.h in Headers */ = {isa = PBXBuildFile; fileRef = A7AB49DC1483C84000028FE8 /* DTFoundation.h */; settings = {ATTRIBUTES = (Public, ); }; };
- A7577A841483FB2300076E2B /* LoadableCategory.h in Headers */ = {isa = PBXBuildFile; fileRef = A7577A831483FB2300076E2B /* LoadableCategory.h */; };
+ A70B4CD01486621B00873A4A /* DTFoundation.h in Headers */ = {isa = PBXBuildFile; fileRef = A70B4CC51486621B00873A4A /* DTFoundation.h */; settings = {ATTRIBUTES = (Public, ); }; };
+ A70B4CD11486621B00873A4A /* DTVersion.h in Headers */ = {isa = PBXBuildFile; fileRef = A70B4CC71486621B00873A4A /* DTVersion.h */; settings = {ATTRIBUTES = (Public, ); }; };
+ A70B4CD21486621B00873A4A /* DTVersion.m in Sources */ = {isa = PBXBuildFile; fileRef = A70B4CC81486621B00873A4A /* DTVersion.m */; };
+ A70B4CD31486621B00873A4A /* LoadableCategory.h in Headers */ = {isa = PBXBuildFile; fileRef = A70B4CC91486621B00873A4A /* LoadableCategory.h */; settings = {ATTRIBUTES = (Public, ); }; };
+ A70B4CD41486621B00873A4A /* NSString+DTFormatNumbers.h in Headers */ = {isa = PBXBuildFile; fileRef = A70B4CCA1486621B00873A4A /* NSString+DTFormatNumbers.h */; settings = {ATTRIBUTES = (Public, ); }; };
+ A70B4CD51486621B00873A4A /* NSString+DTFormatNumbers.m in Sources */ = {isa = PBXBuildFile; fileRef = A70B4CCB1486621B00873A4A /* NSString+DTFormatNumbers.m */; };
+ A70B4CD61486621B00873A4A /* NSURL+DTAppLinks.h in Headers */ = {isa = PBXBuildFile; fileRef = A70B4CCC1486621B00873A4A /* NSURL+DTAppLinks.h */; settings = {ATTRIBUTES = (Public, ); }; };
+ A70B4CD71486621B00873A4A /* NSURL+DTAppLinks.m in Sources */ = {isa = PBXBuildFile; fileRef = A70B4CCD1486621B00873A4A /* NSURL+DTAppLinks.m */; };
+ A70B4CD81486621B00873A4A /* NSURL+DTPrefLinks.h in Headers */ = {isa = PBXBuildFile; fileRef = A70B4CCE1486621B00873A4A /* NSURL+DTPrefLinks.h */; settings = {ATTRIBUTES = (Public, ); }; };
+ A70B4CD91486621B00873A4A /* NSURL+DTPrefLinks.m in Sources */ = {isa = PBXBuildFile; fileRef = A70B4CCF1486621B00873A4A /* NSURL+DTPrefLinks.m */; };
+ A70B4CDD1486628A00873A4A /* LICENSE in Resources */ = {isa = PBXBuildFile; fileRef = A70B4CDB1486628A00873A4A /* LICENSE */; };
+ A70B4CDE1486628A00873A4A /* readme.markdown in Resources */ = {isa = PBXBuildFile; fileRef = A70B4CDC1486628A00873A4A /* readme.markdown */; };
+ A70B4CE2148662B000873A4A /* DTFoundation-Prefix.pch in Headers */ = {isa = PBXBuildFile; fileRef = A70B4CE0148662B000873A4A /* DTFoundation-Prefix.pch */; };
+ A70B4CE81486637E00873A4A /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A7F4DFFA147FD08F00F4059A /* Foundation.framework */; };
+ A70B4CF2148663A800873A4A /* DTVersion.h in Headers */ = {isa = PBXBuildFile; fileRef = A70B4CC71486621B00873A4A /* DTVersion.h */; settings = {ATTRIBUTES = (Public, ); }; };
+ A70B4CF3148663A800873A4A /* NSString+DTFormatNumbers.h in Headers */ = {isa = PBXBuildFile; fileRef = A70B4CCA1486621B00873A4A /* NSString+DTFormatNumbers.h */; settings = {ATTRIBUTES = (Public, ); }; };
+ A70B4CF4148663A800873A4A /* NSURL+DTAppLinks.h in Headers */ = {isa = PBXBuildFile; fileRef = A70B4CCC1486621B00873A4A /* NSURL+DTAppLinks.h */; settings = {ATTRIBUTES = (Public, ); }; };
+ A70B4CF5148663A800873A4A /* NSURL+DTPrefLinks.h in Headers */ = {isa = PBXBuildFile; fileRef = A70B4CCE1486621B00873A4A /* NSURL+DTPrefLinks.h */; settings = {ATTRIBUTES = (Public, ); }; };
+ A70B4CF6148663A800873A4A /* LoadableCategory.h in Headers */ = {isa = PBXBuildFile; fileRef = A70B4CC91486621B00873A4A /* LoadableCategory.h */; settings = {ATTRIBUTES = (Public, ); }; };
+ A70B4CF7148663AF00873A4A /* DTFoundation.h in Headers */ = {isa = PBXBuildFile; fileRef = A70B4CC51486621B00873A4A /* DTFoundation.h */; settings = {ATTRIBUTES = (Public, ); }; };
+ A7A7CC7914866CAF00EC2EE4 /* DTVersion.m in Sources */ = {isa = PBXBuildFile; fileRef = A70B4CC81486621B00873A4A /* DTVersion.m */; };
+ A7A7CC7A14866CAF00EC2EE4 /* NSString+DTFormatNumbers.m in Sources */ = {isa = PBXBuildFile; fileRef = A70B4CCB1486621B00873A4A /* NSString+DTFormatNumbers.m */; };
+ A7A7CC7B14866CAF00EC2EE4 /* NSURL+DTAppLinks.m in Sources */ = {isa = PBXBuildFile; fileRef = A70B4CCD1486621B00873A4A /* NSURL+DTAppLinks.m */; };
+ A7A7CC7C14866CAF00EC2EE4 /* NSURL+DTPrefLinks.m in Sources */ = {isa = PBXBuildFile; fileRef = A70B4CCF1486621B00873A4A /* NSURL+DTPrefLinks.m */; };
/* End PBXBuildFile section */
/* Begin PBXFileReference section */
- A7577A831483FB2300076E2B /* LoadableCategory.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LoadableCategory.h; sourceTree = "<group>"; };
- A7AB49DC1483C84000028FE8 /* DTFoundation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DTFoundation.h; sourceTree = "<group>"; };
+ A70B4CC51486621B00873A4A /* DTFoundation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DTFoundation.h; sourceTree = "<group>"; };
+ A70B4CC71486621B00873A4A /* DTVersion.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DTVersion.h; sourceTree = "<group>"; };
+ A70B4CC81486621B00873A4A /* DTVersion.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DTVersion.m; sourceTree = "<group>"; };
+ A70B4CC91486621B00873A4A /* LoadableCategory.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LoadableCategory.h; sourceTree = "<group>"; };
+ A70B4CCA1486621B00873A4A /* NSString+DTFormatNumbers.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString+DTFormatNumbers.h"; sourceTree = "<group>"; };
+ A70B4CCB1486621B00873A4A /* NSString+DTFormatNumbers.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSString+DTFormatNumbers.m"; sourceTree = "<group>"; };
+ A70B4CCC1486621B00873A4A /* NSURL+DTAppLinks.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSURL+DTAppLinks.h"; sourceTree = "<group>"; };
+ A70B4CCD1486621B00873A4A /* NSURL+DTAppLinks.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSURL+DTAppLinks.m"; sourceTree = "<group>"; };
+ A70B4CCE1486621B00873A4A /* NSURL+DTPrefLinks.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSURL+DTPrefLinks.h"; sourceTree = "<group>"; };
+ A70B4CCF1486621B00873A4A /* NSURL+DTPrefLinks.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSURL+DTPrefLinks.m"; sourceTree = "<group>"; };
+ A70B4CDB1486628A00873A4A /* LICENSE */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = LICENSE; sourceTree = "<group>"; };
+ A70B4CDC1486628A00873A4A /* readme.markdown */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = readme.markdown; sourceTree = "<group>"; };
+ A70B4CDF148662B000873A4A /* DTFoundation-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "DTFoundation-Info.plist"; sourceTree = "<group>"; };
+ A70B4CE0148662B000873A4A /* DTFoundation-Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "DTFoundation-Prefix.pch"; sourceTree = "<group>"; };
+ A70B4CE71486637E00873A4A /* libDTFoundation.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libDTFoundation.a; sourceTree = BUILT_PRODUCTS_DIR; };
A7BAD10E1483F934000E2B6A /* DTFoundation.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = DTFoundation.framework; sourceTree = BUILT_PRODUCTS_DIR; };
- A7C4EF691483D22E00ED8181 /* readme.markdown */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = readme.markdown; sourceTree = SOURCE_ROOT; };
- A7E1404114839F95001E221E /* NSURL+DTPrefLinks.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSURL+DTPrefLinks.h"; sourceTree = "<group>"; };
- A7E1404214839F95001E221E /* NSURL+DTPrefLinks.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSURL+DTPrefLinks.m"; sourceTree = "<group>"; };
- A7F4DFAB147FB61500F4059A /* DTFoundation-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "DTFoundation-Info.plist"; sourceTree = "<group>"; };
- A7F4DFAD147FB61500F4059A /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = "<group>"; };
- A7F4DFAF147FB61500F4059A /* DTFoundation-Prefix.pch */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "DTFoundation-Prefix.pch"; sourceTree = "<group>"; };
- A7F4DFD8147FB69400F4059A /* NSString+DTFormatNumbers.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString+DTFormatNumbers.h"; sourceTree = "<group>"; };
- A7F4DFD9147FB69400F4059A /* NSString+DTFormatNumbers.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSString+DTFormatNumbers.m"; sourceTree = "<group>"; };
- A7F4DFF2147FC5E600F4059A /* NSURL+DTAppLinks.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSURL+DTAppLinks.h"; sourceTree = "<group>"; };
- A7F4DFF3147FC5E600F4059A /* NSURL+DTAppLinks.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSURL+DTAppLinks.m"; sourceTree = "<group>"; };
A7F4DFF8147FD08900F4059A /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; };
A7F4DFFA147FD08F00F4059A /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; };
/* End PBXFileReference section */
/* Begin PBXFrameworksBuildPhase section */
+ A70B4CE41486637E00873A4A /* Frameworks */ = {
+ isa = PBXFrameworksBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ A70B4CE81486637E00873A4A /* Foundation.framework in Frameworks */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
A7BAD1091483F934000E2B6A /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
@@ -60,80 +87,124 @@
/* End PBXFrameworksBuildPhase section */
/* Begin PBXGroup section */
- A7AB49DB1483C47F00028FE8 /* Frameworks */ = {
+ A70B4CC41486621B00873A4A /* Core */ = {
isa = PBXGroup;
children = (
- A7F4DFFA147FD08F00F4059A /* Foundation.framework */,
- A7F4DFF8147FD08900F4059A /* UIKit.framework */,
+ A70B4CC51486621B00873A4A /* DTFoundation.h */,
+ A70B4CDF148662B000873A4A /* DTFoundation-Info.plist */,
+ A70B4CE0148662B000873A4A /* DTFoundation-Prefix.pch */,
+ A70B4CC61486621B00873A4A /* Source */,
);
- name = Frameworks;
+ path = Core;
sourceTree = "<group>";
};
- A7F4DF98147FB61500F4059A = {
+ A70B4CC61486621B00873A4A /* Source */ = {
isa = PBXGroup;
children = (
- A7F4DFA9147FB61500F4059A /* DTFoundation */,
- A7F4DFA6147FB61500F4059A /* Products */,
- A7AB49DB1483C47F00028FE8 /* Frameworks */,
+ A70B4CC71486621B00873A4A /* DTVersion.h */,
+ A70B4CC81486621B00873A4A /* DTVersion.m */,
+ A70B4CCA1486621B00873A4A /* NSString+DTFormatNumbers.h */,
+ A70B4CCB1486621B00873A4A /* NSString+DTFormatNumbers.m */,
+ A70B4CCC1486621B00873A4A /* NSURL+DTAppLinks.h */,
+ A70B4CCD1486621B00873A4A /* NSURL+DTAppLinks.m */,
+ A70B4CCE1486621B00873A4A /* NSURL+DTPrefLinks.h */,
+ A70B4CCF1486621B00873A4A /* NSURL+DTPrefLinks.m */,
+ A70B4CC91486621B00873A4A /* LoadableCategory.h */,
);
+ path = Source;
sourceTree = "<group>";
};
- A7F4DFA6147FB61500F4059A /* Products */ = {
+ A70B4CDA1486626900873A4A /* Documentation */ = {
isa = PBXGroup;
children = (
- A7BAD10E1483F934000E2B6A /* DTFoundation.framework */,
+ A70B4CDB1486628A00873A4A /* LICENSE */,
+ A70B4CDC1486628A00873A4A /* readme.markdown */,
);
- name = Products;
+ name = Documentation;
sourceTree = "<group>";
};
- A7F4DFA9147FB61500F4059A /* DTFoundation */ = {
+ A7AB49DB1483C47F00028FE8 /* Frameworks */ = {
isa = PBXGroup;
children = (
- A7AB49DC1483C84000028FE8 /* DTFoundation.h */,
- A7F4DFD8147FB69400F4059A /* NSString+DTFormatNumbers.h */,
- A7F4DFD9147FB69400F4059A /* NSString+DTFormatNumbers.m */,
- A7F4DFF2147FC5E600F4059A /* NSURL+DTAppLinks.h */,
- A7F4DFF3147FC5E600F4059A /* NSURL+DTAppLinks.m */,
- A7E1404114839F95001E221E /* NSURL+DTPrefLinks.h */,
- A7E1404214839F95001E221E /* NSURL+DTPrefLinks.m */,
- A7F4DFAA147FB61500F4059A /* Supporting Files */,
- );
- path = DTFoundation;
+ A7F4DFFA147FD08F00F4059A /* Foundation.framework */,
+ A7F4DFF8147FD08900F4059A /* UIKit.framework */,
+ );
+ name = Frameworks;
sourceTree = "<group>";
};
- A7F4DFAA147FB61500F4059A /* Supporting Files */ = {
+ A7F4DF98147FB61500F4059A = {
isa = PBXGroup;
children = (
- A7C4EF691483D22E00ED8181 /* readme.markdown */,
- A7F4DFAB147FB61500F4059A /* DTFoundation-Info.plist */,
- A7F4DFAC147FB61500F4059A /* InfoPlist.strings */,
- A7F4DFAF147FB61500F4059A /* DTFoundation-Prefix.pch */,
- A7577A831483FB2300076E2B /* LoadableCategory.h */,
+ A70B4CC41486621B00873A4A /* Core */,
+ A70B4CDA1486626900873A4A /* Documentation */,
+ A7F4DFA6147FB61500F4059A /* Products */,
+ A7AB49DB1483C47F00028FE8 /* Frameworks */,
);
- name = "Supporting Files";
sourceTree = "<group>";
};
+ A7F4DFA6147FB61500F4059A /* Products */ = {
+ isa = PBXGroup;
+ children = (
+ A7BAD10E1483F934000E2B6A /* DTFoundation.framework */,
+ A70B4CE71486637E00873A4A /* libDTFoundation.a */,
+ );
+ name = Products;
+ path = ../..;
+ sourceTree = BUILT_PRODUCTS_DIR;
+ };
/* End PBXGroup section */
/* Begin PBXHeadersBuildPhase section */
+ A70B4CE51486637E00873A4A /* Headers */ = {
+ isa = PBXHeadersBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ A70B4CF2148663A800873A4A /* DTVersion.h in Headers */,
+ A70B4CF3148663A800873A4A /* NSString+DTFormatNumbers.h in Headers */,
+ A70B4CF4148663A800873A4A /* NSURL+DTAppLinks.h in Headers */,
+ A70B4CF5148663A800873A4A /* NSURL+DTPrefLinks.h in Headers */,
+ A70B4CF6148663A800873A4A /* LoadableCategory.h in Headers */,
+ A70B4CF7148663AF00873A4A /* DTFoundation.h in Headers */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
A7BAD10A1483F934000E2B6A /* Headers */ = {
isa = PBXHeadersBuildPhase;
buildActionMask = 2147483647;
files = (
- A7577A801483FA0C00076E2B /* DTFoundation.h in Headers */,
- A7577A7A1483F9A600076E2B /* NSString+DTFormatNumbers.h in Headers */,
- A7577A7B1483F9A600076E2B /* NSURL+DTAppLinks.h in Headers */,
- A7577A7C1483F9A600076E2B /* NSURL+DTPrefLinks.h in Headers */,
- A7577A841483FB2300076E2B /* LoadableCategory.h in Headers */,
+ A70B4CD01486621B00873A4A /* DTFoundation.h in Headers */,
+ A70B4CD11486621B00873A4A /* DTVersion.h in Headers */,
+ A70B4CD31486621B00873A4A /* LoadableCategory.h in Headers */,
+ A70B4CD41486621B00873A4A /* NSString+DTFormatNumbers.h in Headers */,
+ A70B4CD61486621B00873A4A /* NSURL+DTAppLinks.h in Headers */,
+ A70B4CD81486621B00873A4A /* NSURL+DTPrefLinks.h in Headers */,
+ A70B4CE2148662B000873A4A /* DTFoundation-Prefix.pch in Headers */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXHeadersBuildPhase section */
/* Begin PBXNativeTarget section */
- A7BAD10D1483F934000E2B6A /* DTFoundation */ = {
+ A70B4CE61486637E00873A4A /* Static Library */ = {
+ isa = PBXNativeTarget;
+ buildConfigurationList = A70B4CEF1486637E00873A4A /* Build configuration list for PBXNativeTarget "Static Library" */;
+ buildPhases = (
+ A70B4CE31486637E00873A4A /* Sources */,
+ A70B4CE41486637E00873A4A /* Frameworks */,
+ A70B4CE51486637E00873A4A /* Headers */,
+ );
+ buildRules = (
+ );
+ dependencies = (
+ );
+ name = "Static Library";
+ productName = DTFoundation;
+ productReference = A70B4CE71486637E00873A4A /* libDTFoundation.a */;
+ productType = "com.apple.product-type.library.static";
+ };
+ A7BAD10D1483F934000E2B6A /* Static Framework */ = {
isa = PBXNativeTarget;
- buildConfigurationList = A7BAD1161483F934000E2B6A /* Build configuration list for PBXNativeTarget "DTFoundation" */;
+ buildConfigurationList = A7BAD1161483F934000E2B6A /* Build configuration list for PBXNativeTarget "Static Framework" */;
buildPhases = (
A7BAD1071483F934000E2B6A /* ShellScript */,
A7BAD1081483F934000E2B6A /* Sources */,
@@ -146,7 +217,7 @@
);
dependencies = (
);
- name = DTFoundation;
+ name = "Static Framework";
productName = DTFoundation;
productReference = A7BAD10E1483F934000E2B6A /* DTFoundation.framework */;
productType = "com.apple.product-type.bundle";
@@ -173,7 +244,8 @@
projectRoot = "";
targets = (
A7F4DFED147FBAC600F4059A /* Documentation */,
- A7BAD10D1483F934000E2B6A /* DTFoundation */,
+ A7BAD10D1483F934000E2B6A /* Static Framework */,
+ A70B4CE61486637E00873A4A /* Static Library */,
);
};
/* End PBXProject section */
@@ -183,6 +255,8 @@
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
+ A70B4CDD1486628A00873A4A /* LICENSE in Resources */,
+ A70B4CDE1486628A00873A4A /* readme.markdown in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -231,30 +305,57 @@
/* End PBXShellScriptBuildPhase section */
/* Begin PBXSourcesBuildPhase section */
- A7BAD1081483F934000E2B6A /* Sources */ = {
+ A70B4CE31486637E00873A4A /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
- A7577A761483F99B00076E2B /* NSString+DTFormatNumbers.m in Sources */,
- A7577A771483F99B00076E2B /* NSURL+DTAppLinks.m in Sources */,
- A7577A781483F99B00076E2B /* NSURL+DTPrefLinks.m in Sources */,
+ A7A7CC7914866CAF00EC2EE4 /* DTVersion.m in Sources */,
+ A7A7CC7A14866CAF00EC2EE4 /* NSString+DTFormatNumbers.m in Sources */,
+ A7A7CC7B14866CAF00EC2EE4 /* NSURL+DTAppLinks.m in Sources */,
+ A7A7CC7C14866CAF00EC2EE4 /* NSURL+DTPrefLinks.m in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
-/* End PBXSourcesBuildPhase section */
-
-/* Begin PBXVariantGroup section */
- A7F4DFAC147FB61500F4059A /* InfoPlist.strings */ = {
- isa = PBXVariantGroup;
- children = (
- A7F4DFAD147FB61500F4059A /* en */,
+ A7BAD1081483F934000E2B6A /* Sources */ = {
+ isa = PBXSourcesBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ A70B4CD21486621B00873A4A /* DTVersion.m in Sources */,
+ A70B4CD51486621B00873A4A /* NSString+DTFormatNumbers.m in Sources */,
+ A70B4CD71486621B00873A4A /* NSURL+DTAppLinks.m in Sources */,
+ A70B4CD91486621B00873A4A /* NSURL+DTPrefLinks.m in Sources */,
);
- name = InfoPlist.strings;
- sourceTree = "<group>";
+ runOnlyForDeploymentPostprocessing = 0;
};
-/* End PBXVariantGroup section */
+/* End PBXSourcesBuildPhase section */
/* Begin XCBuildConfiguration section */
+ A70B4CF01486637E00873A4A /* Debug */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ARCHS = "$(ARCHS_STANDARD_32_BIT)";
+ DSTROOT = /tmp/DTFoundation.dst;
+ GCC_PRECOMPILE_PREFIX_HEADER = YES;
+ GCC_PREFIX_HEADER = "Core/DTFoundation-Prefix.pch";
+ OTHER_LDFLAGS = "-ObjC";
+ PRODUCT_NAME = DTFoundation;
+ SKIP_INSTALL = YES;
+ };
+ name = Debug;
+ };
+ A70B4CF11486637E00873A4A /* Release */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ARCHS = "$(ARCHS_STANDARD_32_BIT)";
+ DSTROOT = /tmp/DTFoundation.dst;
+ GCC_PRECOMPILE_PREFIX_HEADER = YES;
+ GCC_PREFIX_HEADER = "Core/DTFoundation-Prefix.pch";
+ OTHER_LDFLAGS = "-ObjC";
+ PRODUCT_NAME = DTFoundation;
+ SKIP_INSTALL = YES;
+ };
+ name = Release;
+ };
A7BAD1171483F934000E2B6A /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
@@ -266,13 +367,13 @@
DYLIB_CURRENT_VERSION = 1;
FRAMEWORK_VERSION = A;
GCC_PRECOMPILE_PREFIX_HEADER = YES;
- GCC_PREFIX_HEADER = "DTFoundation/DTFoundation-Prefix.pch";
- INFOPLIST_FILE = "DTFoundation/DTFoundation-Info.plist";
+ GCC_PREFIX_HEADER = "Core/DTFoundation-Prefix.pch";
+ INFOPLIST_FILE = "Core/DTFoundation-Info.plist";
INFOPLIST_PATH = "$(UNLOCALIZED_RESOURCES_FOLDER_PATH)/Info.plist";
INSTALL_PATH = "$(BUILT_PRODUCTS_DIR)";
LINK_WITH_STANDARD_LIBRARIES = NO;
MACH_O_TYPE = mh_object;
- PRODUCT_NAME = "$(TARGET_NAME)";
+ PRODUCT_NAME = DTFoundation;
SKIP_INSTALL = YES;
UNLOCALIZED_RESOURCES_FOLDER_PATH = "$(CONTENTS_FOLDER_PATH)/Resources";
WRAPPER_EXTENSION = framework;
@@ -290,13 +391,13 @@
DYLIB_CURRENT_VERSION = 1;
FRAMEWORK_VERSION = A;
GCC_PRECOMPILE_PREFIX_HEADER = YES;
- GCC_PREFIX_HEADER = "DTFoundation/DTFoundation-Prefix.pch";
- INFOPLIST_FILE = "DTFoundation/DTFoundation-Info.plist";
+ GCC_PREFIX_HEADER = "Core/DTFoundation-Prefix.pch";
+ INFOPLIST_FILE = "Core/DTFoundation-Info.plist";
INFOPLIST_PATH = "$(UNLOCALIZED_RESOURCES_FOLDER_PATH)/Info.plist";
INSTALL_PATH = "$(BUILT_PRODUCTS_DIR)";
LINK_WITH_STANDARD_LIBRARIES = NO;
MACH_O_TYPE = mh_object;
- PRODUCT_NAME = "$(TARGET_NAME)";
+ PRODUCT_NAME = DTFoundation;
SKIP_INSTALL = YES;
UNLOCALIZED_RESOURCES_FOLDER_PATH = "$(CONTENTS_FOLDER_PATH)/Resources";
WRAPPER_EXTENSION = framework;
@@ -368,7 +469,16 @@
/* End XCBuildConfiguration section */
/* Begin XCConfigurationList section */
- A7BAD1161483F934000E2B6A /* Build configuration list for PBXNativeTarget "DTFoundation" */ = {
+ A70B4CEF1486637E00873A4A /* Build configuration list for PBXNativeTarget "Static Library" */ = {
+ isa = XCConfigurationList;
+ buildConfigurations = (
+ A70B4CF01486637E00873A4A /* Debug */,
+ A70B4CF11486637E00873A4A /* Release */,
+ );
+ defaultConfigurationIsVisible = 0;
+ defaultConfigurationName = Release;
+ };
+ A7BAD1161483F934000E2B6A /* Build configuration list for PBXNativeTarget "Static Framework" */ = {
isa = XCConfigurationList;
buildConfigurations = (
A7BAD1171483F934000E2B6A /* Debug */,
View
3  DTFoundation/DTFoundation.h
@@ -1,3 +0,0 @@
-#import "NSString+DTFormatNumbers.h"
-#import "NSURL+DTAppLinks.h"
-#import "NSURL+DTPrefLinks.h"
View
2  DTFoundation/en.lproj/InfoPlist.strings
@@ -1,2 +0,0 @@
-/* Localized versions of Info.plist keys */
-
View
1  readme.markdown
@@ -10,7 +10,6 @@ Contained are several category methods
- NSString - formatting Numbers
- NSURL - getting direct-access URLs for preferences and the mobile app store
-
License
-------
Please sign in to comment.
Something went wrong with that request. Please try again.