diff --git a/TalkinToTheNet/KPgoLoco.xcodeproj/project.pbxproj b/TalkinToTheNet/KPgoLoco.xcodeproj/project.pbxproj new file mode 100644 index 0000000..81e7704 --- /dev/null +++ b/TalkinToTheNet/KPgoLoco.xcodeproj/project.pbxproj @@ -0,0 +1,595 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 46; + objects = { + +/* Begin PBXBuildFile section */ + 18B4094E1BB5DAF8003371FE /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 18B4094D1BB5DAF8003371FE /* main.m */; }; + 18B409511BB5DAF8003371FE /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 18B409501BB5DAF8003371FE /* AppDelegate.m */; }; + 18B409571BB5DAF8003371FE /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 18B409551BB5DAF8003371FE /* Main.storyboard */; }; + 18B409591BB5DAF8003371FE /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 18B409581BB5DAF8003371FE /* Assets.xcassets */; }; + 18B4095C1BB5DAF8003371FE /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 18B4095A1BB5DAF8003371FE /* LaunchScreen.storyboard */; }; + 18B409671BB5DAF8003371FE /* KPgoLocoTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 18B409661BB5DAF8003371FE /* KPgoLocoTests.m */; }; + 18B409721BB5DAF8003371FE /* KPgoLocoUITests.m in Sources */ = {isa = PBXBuildFile; fileRef = 18B409711BB5DAF8003371FE /* KPgoLocoUITests.m */; }; + 18B409841BB5E6F2003371FE /* FoursquareAnnotation.m in Sources */ = {isa = PBXBuildFile; fileRef = 18B409831BB5E6F2003371FE /* FoursquareAnnotation.m */; }; + 18B409861BB5E9E9003371FE /* MapKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 18B409851BB5E9E9003371FE /* MapKit.framework */; }; + 18B4098C1BB5F3C5003371FE /* KPgoLocoViewConViewCon.m in Sources */ = {isa = PBXBuildFile; fileRef = 18B4098B1BB5F3C5003371FE /* KPgoLocoViewConViewCon.m */; }; + 8496E544C4F199A0709643C9 /* libPods.a in Frameworks */ = {isa = PBXBuildFile; fileRef = E220304144DBBEEF3294100B /* libPods.a */; }; +/* End PBXBuildFile section */ + +/* Begin PBXContainerItemProxy section */ + 18B409631BB5DAF8003371FE /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 18B409411BB5DAF8003371FE /* Project object */; + proxyType = 1; + remoteGlobalIDString = 18B409481BB5DAF8003371FE; + remoteInfo = KPgoLoco; + }; + 18B4096E1BB5DAF8003371FE /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 18B409411BB5DAF8003371FE /* Project object */; + proxyType = 1; + remoteGlobalIDString = 18B409481BB5DAF8003371FE; + remoteInfo = KPgoLoco; + }; +/* End PBXContainerItemProxy section */ + +/* Begin PBXFileReference section */ + 18B409491BB5DAF8003371FE /* KPgoLoco.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = KPgoLoco.app; sourceTree = BUILT_PRODUCTS_DIR; }; + 18B4094D1BB5DAF8003371FE /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; + 18B4094F1BB5DAF8003371FE /* AppDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = ""; }; + 18B409501BB5DAF8003371FE /* AppDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = ""; }; + 18B409561BB5DAF8003371FE /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; }; + 18B409581BB5DAF8003371FE /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; + 18B4095B1BB5DAF8003371FE /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; + 18B4095D1BB5DAF8003371FE /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + 18B409621BB5DAF8003371FE /* KPgoLocoTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = KPgoLocoTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; + 18B409661BB5DAF8003371FE /* KPgoLocoTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = KPgoLocoTests.m; sourceTree = ""; }; + 18B409681BB5DAF8003371FE /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + 18B4096D1BB5DAF8003371FE /* KPgoLocoUITests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = KPgoLocoUITests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; + 18B409711BB5DAF8003371FE /* KPgoLocoUITests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = KPgoLocoUITests.m; sourceTree = ""; }; + 18B409731BB5DAF8003371FE /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + 18B409821BB5E6F2003371FE /* FoursquareAnnotation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FoursquareAnnotation.h; sourceTree = ""; }; + 18B409831BB5E6F2003371FE /* FoursquareAnnotation.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FoursquareAnnotation.m; sourceTree = ""; }; + 18B409851BB5E9E9003371FE /* MapKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MapKit.framework; path = System/Library/Frameworks/MapKit.framework; sourceTree = SDKROOT; }; + 18B4098A1BB5F3C5003371FE /* KPgoLocoViewConViewCon.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = KPgoLocoViewConViewCon.h; sourceTree = ""; }; + 18B4098B1BB5F3C5003371FE /* KPgoLocoViewConViewCon.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = KPgoLocoViewConViewCon.m; sourceTree = ""; }; + 2BDBFA0E0E81990EC2BA5D5D /* Pods.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = Pods.debug.xcconfig; path = "Pods/Target Support Files/Pods/Pods.debug.xcconfig"; sourceTree = ""; }; + E06CA1426C42CE27E6283E79 /* Pods.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = Pods.release.xcconfig; path = "Pods/Target Support Files/Pods/Pods.release.xcconfig"; sourceTree = ""; }; + E220304144DBBEEF3294100B /* libPods.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libPods.a; sourceTree = BUILT_PRODUCTS_DIR; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 18B409461BB5DAF8003371FE /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 18B409861BB5E9E9003371FE /* MapKit.framework in Frameworks */, + 8496E544C4F199A0709643C9 /* libPods.a in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 18B4095F1BB5DAF8003371FE /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 18B4096A1BB5DAF8003371FE /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 05D00CCC9BBE7A5270B53AA2 /* Frameworks */ = { + isa = PBXGroup; + children = ( + 18B409851BB5E9E9003371FE /* MapKit.framework */, + E220304144DBBEEF3294100B /* libPods.a */, + ); + name = Frameworks; + sourceTree = ""; + }; + 14DECCFAFE9B46A9A3E5981D /* Pods */ = { + isa = PBXGroup; + children = ( + 2BDBFA0E0E81990EC2BA5D5D /* Pods.debug.xcconfig */, + E06CA1426C42CE27E6283E79 /* Pods.release.xcconfig */, + ); + name = Pods; + sourceTree = ""; + }; + 18B409401BB5DAF8003371FE = { + isa = PBXGroup; + children = ( + 18B4094B1BB5DAF8003371FE /* KPgoLoco */, + 18B409651BB5DAF8003371FE /* KPgoLocoTests */, + 18B409701BB5DAF8003371FE /* KPgoLocoUITests */, + 18B4094A1BB5DAF8003371FE /* Products */, + 14DECCFAFE9B46A9A3E5981D /* Pods */, + 05D00CCC9BBE7A5270B53AA2 /* Frameworks */, + ); + sourceTree = ""; + }; + 18B4094A1BB5DAF8003371FE /* Products */ = { + isa = PBXGroup; + children = ( + 18B409491BB5DAF8003371FE /* KPgoLoco.app */, + 18B409621BB5DAF8003371FE /* KPgoLocoTests.xctest */, + 18B4096D1BB5DAF8003371FE /* KPgoLocoUITests.xctest */, + ); + name = Products; + sourceTree = ""; + }; + 18B4094B1BB5DAF8003371FE /* KPgoLoco */ = { + isa = PBXGroup; + children = ( + 18B4094F1BB5DAF8003371FE /* AppDelegate.h */, + 18B409501BB5DAF8003371FE /* AppDelegate.m */, + 18B409821BB5E6F2003371FE /* FoursquareAnnotation.h */, + 18B409831BB5E6F2003371FE /* FoursquareAnnotation.m */, + 18B409551BB5DAF8003371FE /* Main.storyboard */, + 18B4098A1BB5F3C5003371FE /* KPgoLocoViewConViewCon.h */, + 18B4098B1BB5F3C5003371FE /* KPgoLocoViewConViewCon.m */, + 18B409581BB5DAF8003371FE /* Assets.xcassets */, + 18B4095A1BB5DAF8003371FE /* LaunchScreen.storyboard */, + 18B4095D1BB5DAF8003371FE /* Info.plist */, + 18B4094C1BB5DAF8003371FE /* Supporting Files */, + ); + path = KPgoLoco; + sourceTree = ""; + }; + 18B4094C1BB5DAF8003371FE /* Supporting Files */ = { + isa = PBXGroup; + children = ( + 18B4094D1BB5DAF8003371FE /* main.m */, + ); + name = "Supporting Files"; + sourceTree = ""; + }; + 18B409651BB5DAF8003371FE /* KPgoLocoTests */ = { + isa = PBXGroup; + children = ( + 18B409661BB5DAF8003371FE /* KPgoLocoTests.m */, + 18B409681BB5DAF8003371FE /* Info.plist */, + ); + path = KPgoLocoTests; + sourceTree = ""; + }; + 18B409701BB5DAF8003371FE /* KPgoLocoUITests */ = { + isa = PBXGroup; + children = ( + 18B409711BB5DAF8003371FE /* KPgoLocoUITests.m */, + 18B409731BB5DAF8003371FE /* Info.plist */, + ); + path = KPgoLocoUITests; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 18B409481BB5DAF8003371FE /* KPgoLoco */ = { + isa = PBXNativeTarget; + buildConfigurationList = 18B409761BB5DAF8003371FE /* Build configuration list for PBXNativeTarget "KPgoLoco" */; + buildPhases = ( + 7EEAC0CAAD334CE7F26A1646 /* Check Pods Manifest.lock */, + 18B409451BB5DAF8003371FE /* Sources */, + 18B409461BB5DAF8003371FE /* Frameworks */, + 18B409471BB5DAF8003371FE /* Resources */, + 9C2AA94F2E251E78FA1E5479 /* Copy Pods Resources */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = KPgoLoco; + productName = KPgoLoco; + productReference = 18B409491BB5DAF8003371FE /* KPgoLoco.app */; + productType = "com.apple.product-type.application"; + }; + 18B409611BB5DAF8003371FE /* KPgoLocoTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = 18B409791BB5DAF8003371FE /* Build configuration list for PBXNativeTarget "KPgoLocoTests" */; + buildPhases = ( + 18B4095E1BB5DAF8003371FE /* Sources */, + 18B4095F1BB5DAF8003371FE /* Frameworks */, + 18B409601BB5DAF8003371FE /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + 18B409641BB5DAF8003371FE /* PBXTargetDependency */, + ); + name = KPgoLocoTests; + productName = KPgoLocoTests; + productReference = 18B409621BB5DAF8003371FE /* KPgoLocoTests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; + }; + 18B4096C1BB5DAF8003371FE /* KPgoLocoUITests */ = { + isa = PBXNativeTarget; + buildConfigurationList = 18B4097C1BB5DAF8003371FE /* Build configuration list for PBXNativeTarget "KPgoLocoUITests" */; + buildPhases = ( + 18B409691BB5DAF8003371FE /* Sources */, + 18B4096A1BB5DAF8003371FE /* Frameworks */, + 18B4096B1BB5DAF8003371FE /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + 18B4096F1BB5DAF8003371FE /* PBXTargetDependency */, + ); + name = KPgoLocoUITests; + productName = KPgoLocoUITests; + productReference = 18B4096D1BB5DAF8003371FE /* KPgoLocoUITests.xctest */; + productType = "com.apple.product-type.bundle.ui-testing"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 18B409411BB5DAF8003371FE /* Project object */ = { + isa = PBXProject; + attributes = { + LastUpgradeCheck = 0710; + ORGANIZATIONNAME = MacManApp; + TargetAttributes = { + 18B409481BB5DAF8003371FE = { + CreatedOnToolsVersion = 7.1; + }; + 18B409611BB5DAF8003371FE = { + CreatedOnToolsVersion = 7.1; + TestTargetID = 18B409481BB5DAF8003371FE; + }; + 18B4096C1BB5DAF8003371FE = { + CreatedOnToolsVersion = 7.1; + TestTargetID = 18B409481BB5DAF8003371FE; + }; + }; + }; + buildConfigurationList = 18B409441BB5DAF8003371FE /* Build configuration list for PBXProject "KPgoLoco" */; + compatibilityVersion = "Xcode 3.2"; + developmentRegion = English; + hasScannedForEncodings = 0; + knownRegions = ( + en, + Base, + ); + mainGroup = 18B409401BB5DAF8003371FE; + productRefGroup = 18B4094A1BB5DAF8003371FE /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 18B409481BB5DAF8003371FE /* KPgoLoco */, + 18B409611BB5DAF8003371FE /* KPgoLocoTests */, + 18B4096C1BB5DAF8003371FE /* KPgoLocoUITests */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + 18B409471BB5DAF8003371FE /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 18B4095C1BB5DAF8003371FE /* LaunchScreen.storyboard in Resources */, + 18B409591BB5DAF8003371FE /* Assets.xcassets in Resources */, + 18B409571BB5DAF8003371FE /* Main.storyboard in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 18B409601BB5DAF8003371FE /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 18B4096B1BB5DAF8003371FE /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXShellScriptBuildPhase section */ + 7EEAC0CAAD334CE7F26A1646 /* Check Pods Manifest.lock */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + name = "Check Pods Manifest.lock"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "diff \"${PODS_ROOT}/../Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [[ $? != 0 ]] ; then\n cat << EOM\nerror: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\nEOM\n exit 1\nfi\n"; + showEnvVarsInLog = 0; + }; + 9C2AA94F2E251E78FA1E5479 /* Copy Pods Resources */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + name = "Copy Pods Resources"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods/Pods-resources.sh\"\n"; + showEnvVarsInLog = 0; + }; +/* End PBXShellScriptBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 18B409451BB5DAF8003371FE /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 18B409841BB5E6F2003371FE /* FoursquareAnnotation.m in Sources */, + 18B4098C1BB5F3C5003371FE /* KPgoLocoViewConViewCon.m in Sources */, + 18B409511BB5DAF8003371FE /* AppDelegate.m in Sources */, + 18B4094E1BB5DAF8003371FE /* main.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 18B4095E1BB5DAF8003371FE /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 18B409671BB5DAF8003371FE /* KPgoLocoTests.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 18B409691BB5DAF8003371FE /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 18B409721BB5DAF8003371FE /* KPgoLocoUITests.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXTargetDependency section */ + 18B409641BB5DAF8003371FE /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 18B409481BB5DAF8003371FE /* KPgoLoco */; + targetProxy = 18B409631BB5DAF8003371FE /* PBXContainerItemProxy */; + }; + 18B4096F1BB5DAF8003371FE /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 18B409481BB5DAF8003371FE /* KPgoLoco */; + targetProxy = 18B4096E1BB5DAF8003371FE /* PBXContainerItemProxy */; + }; +/* End PBXTargetDependency section */ + +/* Begin PBXVariantGroup section */ + 18B409551BB5DAF8003371FE /* Main.storyboard */ = { + isa = PBXVariantGroup; + children = ( + 18B409561BB5DAF8003371FE /* Base */, + ); + name = Main.storyboard; + sourceTree = ""; + }; + 18B4095A1BB5DAF8003371FE /* LaunchScreen.storyboard */ = { + isa = PBXVariantGroup; + children = ( + 18B4095B1BB5DAF8003371FE /* Base */, + ); + name = LaunchScreen.storyboard; + sourceTree = ""; + }; +/* End PBXVariantGroup section */ + +/* Begin XCBuildConfiguration section */ + 18B409741BB5DAF8003371FE /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 9.1; + MTL_ENABLE_DEBUG_INFO = YES; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 18B409751BB5DAF8003371FE /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 9.1; + MTL_ENABLE_DEBUG_INFO = NO; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + 18B409771BB5DAF8003371FE /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 2BDBFA0E0E81990EC2BA5D5D /* Pods.debug.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + INFOPLIST_FILE = KPgoLoco/Info.plist; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.buleApp.KPgoLoco; + PRODUCT_NAME = "$(TARGET_NAME)"; + }; + name = Debug; + }; + 18B409781BB5DAF8003371FE /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = E06CA1426C42CE27E6283E79 /* Pods.release.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + INFOPLIST_FILE = KPgoLoco/Info.plist; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.buleApp.KPgoLoco; + PRODUCT_NAME = "$(TARGET_NAME)"; + }; + name = Release; + }; + 18B4097A1BB5DAF8003371FE /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + INFOPLIST_FILE = KPgoLocoTests/Info.plist; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.buleApp.KPgoLocoTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/KPgoLoco.app/KPgoLoco"; + }; + name = Debug; + }; + 18B4097B1BB5DAF8003371FE /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + BUNDLE_LOADER = "$(TEST_HOST)"; + INFOPLIST_FILE = KPgoLocoTests/Info.plist; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.buleApp.KPgoLocoTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/KPgoLoco.app/KPgoLoco"; + }; + name = Release; + }; + 18B4097D1BB5DAF8003371FE /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = KPgoLocoUITests/Info.plist; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.buleApp.KPgoLocoUITests; + PRODUCT_NAME = "$(TARGET_NAME)"; + TEST_TARGET_NAME = KPgoLoco; + USES_XCTRUNNER = YES; + }; + name = Debug; + }; + 18B4097E1BB5DAF8003371FE /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = KPgoLocoUITests/Info.plist; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.buleApp.KPgoLocoUITests; + PRODUCT_NAME = "$(TARGET_NAME)"; + TEST_TARGET_NAME = KPgoLoco; + USES_XCTRUNNER = YES; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 18B409441BB5DAF8003371FE /* Build configuration list for PBXProject "KPgoLoco" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 18B409741BB5DAF8003371FE /* Debug */, + 18B409751BB5DAF8003371FE /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 18B409761BB5DAF8003371FE /* Build configuration list for PBXNativeTarget "KPgoLoco" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 18B409771BB5DAF8003371FE /* Debug */, + 18B409781BB5DAF8003371FE /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 18B409791BB5DAF8003371FE /* Build configuration list for PBXNativeTarget "KPgoLocoTests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 18B4097A1BB5DAF8003371FE /* Debug */, + 18B4097B1BB5DAF8003371FE /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 18B4097C1BB5DAF8003371FE /* Build configuration list for PBXNativeTarget "KPgoLocoUITests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 18B4097D1BB5DAF8003371FE /* Debug */, + 18B4097E1BB5DAF8003371FE /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 18B409411BB5DAF8003371FE /* Project object */; +} diff --git a/TalkinToTheNet/TalkinToTheNet.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/TalkinToTheNet/KPgoLoco.xcodeproj/project.xcworkspace/contents.xcworkspacedata similarity index 68% rename from TalkinToTheNet/TalkinToTheNet.xcodeproj/project.xcworkspace/contents.xcworkspacedata rename to TalkinToTheNet/KPgoLoco.xcodeproj/project.xcworkspace/contents.xcworkspacedata index dd37565..4e010dc 100644 --- a/TalkinToTheNet/TalkinToTheNet.xcodeproj/project.xcworkspace/contents.xcworkspacedata +++ b/TalkinToTheNet/KPgoLoco.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -2,6 +2,6 @@ + location = "self:KPgoLoco.xcodeproj"> diff --git a/TalkinToTheNet/KPgoLoco.xcworkspace/contents.xcworkspacedata b/TalkinToTheNet/KPgoLoco.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000..3e188fa --- /dev/null +++ b/TalkinToTheNet/KPgoLoco.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,10 @@ + + + + + + + diff --git a/TalkinToTheNet/TalkinToTheNet/AppDelegate.h b/TalkinToTheNet/KPgoLoco/AppDelegate.h similarity index 58% rename from TalkinToTheNet/TalkinToTheNet/AppDelegate.h rename to TalkinToTheNet/KPgoLoco/AppDelegate.h index 3a55995..149e219 100644 --- a/TalkinToTheNet/TalkinToTheNet/AppDelegate.h +++ b/TalkinToTheNet/KPgoLoco/AppDelegate.h @@ -1,9 +1,9 @@ // // AppDelegate.h -// TalkinToTheNet +// KPgoLoco // -// Created by Michael Kavouras on 9/20/15. -// Copyright © 2015 Mike Kavouras. All rights reserved. +// Created by MacMan on 9/25/15. +// Copyright © 2015 MacManApp. All rights reserved. // #import diff --git a/TalkinToTheNet/TalkinToTheNet/AppDelegate.m b/TalkinToTheNet/KPgoLoco/AppDelegate.m similarity index 94% rename from TalkinToTheNet/TalkinToTheNet/AppDelegate.m rename to TalkinToTheNet/KPgoLoco/AppDelegate.m index d99b336..7f980e2 100644 --- a/TalkinToTheNet/TalkinToTheNet/AppDelegate.m +++ b/TalkinToTheNet/KPgoLoco/AppDelegate.m @@ -1,9 +1,9 @@ // // AppDelegate.m -// TalkinToTheNet +// KPgoLoco // -// Created by Michael Kavouras on 9/20/15. -// Copyright © 2015 Mike Kavouras. All rights reserved. +// Created by MacMan on 9/25/15. +// Copyright © 2015 MacManApp. All rights reserved. // #import "AppDelegate.h" diff --git a/TalkinToTheNet/TalkinToTheNet/Assets.xcassets/AppIcon.appiconset/Contents.json b/TalkinToTheNet/KPgoLoco/Assets.xcassets/AppIcon.appiconset/Contents.json similarity index 54% rename from TalkinToTheNet/TalkinToTheNet/Assets.xcassets/AppIcon.appiconset/Contents.json rename to TalkinToTheNet/KPgoLoco/Assets.xcassets/AppIcon.appiconset/Contents.json index 118c98f..36d2c80 100644 --- a/TalkinToTheNet/TalkinToTheNet/Assets.xcassets/AppIcon.appiconset/Contents.json +++ b/TalkinToTheNet/KPgoLoco/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -29,6 +29,36 @@ "idiom" : "iphone", "size" : "60x60", "scale" : "3x" + }, + { + "idiom" : "ipad", + "size" : "29x29", + "scale" : "1x" + }, + { + "idiom" : "ipad", + "size" : "29x29", + "scale" : "2x" + }, + { + "idiom" : "ipad", + "size" : "40x40", + "scale" : "1x" + }, + { + "idiom" : "ipad", + "size" : "40x40", + "scale" : "2x" + }, + { + "idiom" : "ipad", + "size" : "76x76", + "scale" : "1x" + }, + { + "idiom" : "ipad", + "size" : "76x76", + "scale" : "2x" } ], "info" : { diff --git a/TalkinToTheNet/TalkinToTheNet/Base.lproj/LaunchScreen.storyboard b/TalkinToTheNet/KPgoLoco/Base.lproj/LaunchScreen.storyboard similarity index 84% rename from TalkinToTheNet/TalkinToTheNet/Base.lproj/LaunchScreen.storyboard rename to TalkinToTheNet/KPgoLoco/Base.lproj/LaunchScreen.storyboard index 2e721e1..17003fe 100644 --- a/TalkinToTheNet/TalkinToTheNet/Base.lproj/LaunchScreen.storyboard +++ b/TalkinToTheNet/KPgoLoco/Base.lproj/LaunchScreen.storyboard @@ -1,7 +1,7 @@ - + - + diff --git a/TalkinToTheNet/TalkinToTheNet/Base.lproj/Main.storyboard b/TalkinToTheNet/KPgoLoco/Base.lproj/Main.storyboard similarity index 80% rename from TalkinToTheNet/TalkinToTheNet/Base.lproj/Main.storyboard rename to TalkinToTheNet/KPgoLoco/Base.lproj/Main.storyboard index f56d2f3..edb90c0 100644 --- a/TalkinToTheNet/TalkinToTheNet/Base.lproj/Main.storyboard +++ b/TalkinToTheNet/KPgoLoco/Base.lproj/Main.storyboard @@ -1,13 +1,13 @@ - + - + - + diff --git a/TalkinToTheNet/KPgoLoco/FoursquareAnnotation.h b/TalkinToTheNet/KPgoLoco/FoursquareAnnotation.h new file mode 100644 index 0000000..4be7eb0 --- /dev/null +++ b/TalkinToTheNet/KPgoLoco/FoursquareAnnotation.h @@ -0,0 +1,19 @@ +// +// FourSquareAnnotation.h +// KPgoLoco +// +// Created by MacMan on 9/25/15. +// Copyright © 2015 MacManApp. All rights reserved. +// + +#import +#import + + +@interface FoursquareAnnotation : UIView + +@property (nonatomic, assign)CLLocationCoordinate2D coordinate; +@property (nonatomic, copy)NSString *title; +@property (nonatomic, copy)NSString *subtitle; + +@end diff --git a/TalkinToTheNet/KPgoLoco/FoursquareAnnotation.m b/TalkinToTheNet/KPgoLoco/FoursquareAnnotation.m new file mode 100644 index 0000000..f2d3445 --- /dev/null +++ b/TalkinToTheNet/KPgoLoco/FoursquareAnnotation.m @@ -0,0 +1,41 @@ +// +// FourSquareAnnotation.m +// KPgoLoco +// +// Created by MacMan on 9/25/15. +// Copyright © 2015 MacManApp. All rights reserved. +// + +#import "FoursquareAnnotation.h" + + +@implementation FoursquareAnnotation + + +@synthesize coordinate; +@synthesize title; +@synthesize subtitle; + + + +-(id)initWithFrame:(CGRect)frame +{ + self = [super initWithFrame:frame]; + if (self){ + //[self superclass]; + + } + return self; + +} + + +/* + Only override drawRect: if you perform custom drawing. + An empty implementation adversely affects performance during animation. +- (void)drawRect:(CGRect)rect { + Drawing code +} +*/ + +@end diff --git a/TalkinToTheNet/TalkinToTheNet/Info.plist b/TalkinToTheNet/KPgoLoco/Info.plist similarity index 80% rename from TalkinToTheNet/TalkinToTheNet/Info.plist rename to TalkinToTheNet/KPgoLoco/Info.plist index 6905cc6..40c6215 100644 --- a/TalkinToTheNet/TalkinToTheNet/Info.plist +++ b/TalkinToTheNet/KPgoLoco/Info.plist @@ -36,5 +36,12 @@ UIInterfaceOrientationLandscapeLeft UIInterfaceOrientationLandscapeRight + UISupportedInterfaceOrientations~ipad + + UIInterfaceOrientationPortrait + UIInterfaceOrientationPortraitUpsideDown + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + diff --git a/TalkinToTheNet/KPgoLoco/KPgoLocoViewConViewCon.h b/TalkinToTheNet/KPgoLoco/KPgoLocoViewConViewCon.h new file mode 100644 index 0000000..fbc7748 --- /dev/null +++ b/TalkinToTheNet/KPgoLoco/KPgoLocoViewConViewCon.h @@ -0,0 +1,28 @@ +// +// KPgoLocoViewConViewCon.h +// KPgoLoco +// +// Created by MacMan on 9/25/15. +// Copyright © 2015 MacManApp. All rights reserved. +// + +#import +#import + + +@interface KPgoLocoViewConViewCon : UIViewController + +@property (nonatomic, weak) IBOutlet MKMapView *mvFoursquare; + +@property (nonatomic, weak) MKUserLocation *userCurrentLocation; + +@property (nonatomic, strong) NSURLConnection *urlConnection; + +@property (nonatomic, copy) NSMutableData *mutableData; + + + + + + +@end diff --git a/TalkinToTheNet/KPgoLoco/KPgoLocoViewConViewCon.m b/TalkinToTheNet/KPgoLoco/KPgoLocoViewConViewCon.m new file mode 100644 index 0000000..ae6fa19 --- /dev/null +++ b/TalkinToTheNet/KPgoLoco/KPgoLocoViewConViewCon.m @@ -0,0 +1,126 @@ +// +// KPgoLocoViewConViewCon.m +// KPgoLoco +// +// Created by MacMan on 9/25/15. +// Copyright © 2015 MacManApp. All rights reserved. +// + + +#import +#import "KPgoLocoViewConViewCon.h" +#import "SBJSON4.h" +#import "FoursquareAnnotation.h" + +@interface KPgoLocoViewConViewCon () + +@end + +@implementation KPgoLocoViewConViewCon + +@synthesize mvFoursquare; +@synthesize userCurrentLocation; +@synthesize urlConnection; +@synthesize mutableData; + + + + +- (void)viewDidLoad { + [super viewDidLoad]; + [self setMutableData:nil]; + +} +- (void)didReceiveMemoryWarning { + [super didReceiveMemoryWarning]; + // Dispose of any resources that can be recreated. +} + + + +- (void)mapView:(MKMapView *)mapView didUpdateUserLocation:(MKUserLocation *)userLocation +{ + [self setMutableData: nil]; + + [mapView removeAnnotations: [mapView annotations]]; + + NSString *stringURL = [NSString stringWithFormat: @"https://api.foursquare.com/v2/venues/search?ll=%f,%f&client_id=TRVGUWRGA0LPBCQGL5OFNSTMXUYT05JR4SIRPHNSTE43YQNU&client_secret=DRCHGGJGOYXUH5L0GL444J3ZSKWKZZ2P4DH0GIM5QVM0ATCR", [userLocation coordinate].latitude, [userLocation coordinate].longitude]; + NSURL *URLWithString = [NSURL URLWithString: stringURL]; + NSURLRequest *urlRequest = [NSURLRequest requestWithURL: URLWithString cachePolicy: NSURLRequestReloadIgnoringCacheData timeoutInterval: 30.f]; + urlConnection = [[NSURLConnection alloc] initWithRequest: urlRequest delegate: self]; + + CLLocationCoordinate2D userCoords = [userLocation coordinate]; + MKCoordinateRegion region = { { userCoords.latitude , userCoords.longitude }, { 0.009f , 0.009f } }; + [mapView setRegion: region animated: YES]; +} + + +- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data +{ + if (mutableData == nil) + { + mutableData = [[NSMutableData alloc] init]; + } + + [mutableData appendData: data]; +} + + + + + + + + +- (void)connectionDidFinishLoading:(NSURLConnection *)connection +{ + SBJson4Parser *jsonParser = [[SBJson4Parser alloc] init]; + + NSString *strData = [[NSString alloc] initWithData: mutableData encoding: NSUTF8StringEncoding]; + + NSDictionary *dictVenues = [jsonParser objectWithString: strData error: nil]; + NSDictionary *items = [[[[dictVenues objectForKey: @"response"] objectForKey: @"groups"] objectAtIndex: 0] objectForKey: @"items"]; + + NSMutableArray *annotations = [[NSMutableArray alloc] init]; + + for (NSDictionary *venues in items) + { + NSString *name = [venues objectForKey: @"name"]; + NSString *address = [[venues objectForKey: @"location"] objectForKey: @"address"]; + + CGFloat latitude = [[[venues objectForKey: @"location"] objectForKey: @"lat"] floatValue]; + CGFloat longitude = [[[venues objectForKey: @"location"] objectForKey: @"lng"] floatValue]; + + FoursquareAnnotation *foursquareAnnotation = [[FoursquareAnnotation alloc] init]; + MKCoordinateRegion region = { { latitude , longitude } , { 0.01f , 0.01f } }; + + [FoursquareAnnotation setCoordinate: region.center]; + [FoursquareAnnotation title: name]; + [FoursquareAnnotation subtitle: address]; + + [annotations addObject: foursquareAnnotation]; + // [foursquareAnnotation release]; + } + + [mvFoursquare addAnnotations: annotations]; + +// [jsonParser release]; +// [strData release]; +// [annotations release]; + + [self setMutableData: nil]; + +} + + +/* +#pragma mark - Navigation + +// In a storyboard-based application, you will often want to do a little preparation before navigation +- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender { + // Get the new view controller using [segue destinationViewController]. + // Pass the selected object to the new view controller. +} +*/ + +@end diff --git a/TalkinToTheNet/TalkinToTheNet/main.m b/TalkinToTheNet/KPgoLoco/main.m similarity index 65% rename from TalkinToTheNet/TalkinToTheNet/main.m rename to TalkinToTheNet/KPgoLoco/main.m index af682e9..6db606c 100644 --- a/TalkinToTheNet/TalkinToTheNet/main.m +++ b/TalkinToTheNet/KPgoLoco/main.m @@ -1,9 +1,9 @@ // // main.m -// TalkinToTheNet +// KPgoLoco // -// Created by Michael Kavouras on 9/20/15. -// Copyright © 2015 Mike Kavouras. All rights reserved. +// Created by MacMan on 9/25/15. +// Copyright © 2015 MacManApp. All rights reserved. // #import diff --git a/TalkinToTheNet/KPgoLocoTests/Info.plist b/TalkinToTheNet/KPgoLocoTests/Info.plist new file mode 100644 index 0000000..ba72822 --- /dev/null +++ b/TalkinToTheNet/KPgoLocoTests/Info.plist @@ -0,0 +1,24 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + $(PRODUCT_NAME) + CFBundlePackageType + BNDL + CFBundleShortVersionString + 1.0 + CFBundleSignature + ???? + CFBundleVersion + 1 + + diff --git a/TalkinToTheNet/KPgoLocoTests/KPgoLocoTests.m b/TalkinToTheNet/KPgoLocoTests/KPgoLocoTests.m new file mode 100644 index 0000000..d85d86b --- /dev/null +++ b/TalkinToTheNet/KPgoLocoTests/KPgoLocoTests.m @@ -0,0 +1,39 @@ +// +// KPgoLocoTests.m +// KPgoLocoTests +// +// Created by MacMan on 9/25/15. +// Copyright © 2015 MacManApp. All rights reserved. +// + +#import + +@interface KPgoLocoTests : XCTestCase + +@end + +@implementation KPgoLocoTests + +- (void)setUp { + [super setUp]; + // Put setup code here. This method is called before the invocation of each test method in the class. +} + +- (void)tearDown { + // Put teardown code here. This method is called after the invocation of each test method in the class. + [super tearDown]; +} + +- (void)testExample { + // This is an example of a functional test case. + // Use XCTAssert and related functions to verify your tests produce the correct results. +} + +- (void)testPerformanceExample { + // This is an example of a performance test case. + [self measureBlock:^{ + // Put the code you want to measure the time of here. + }]; +} + +@end diff --git a/TalkinToTheNet/KPgoLocoUITests/Info.plist b/TalkinToTheNet/KPgoLocoUITests/Info.plist new file mode 100644 index 0000000..ba72822 --- /dev/null +++ b/TalkinToTheNet/KPgoLocoUITests/Info.plist @@ -0,0 +1,24 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + $(PRODUCT_NAME) + CFBundlePackageType + BNDL + CFBundleShortVersionString + 1.0 + CFBundleSignature + ???? + CFBundleVersion + 1 + + diff --git a/TalkinToTheNet/KPgoLocoUITests/KPgoLocoUITests.m b/TalkinToTheNet/KPgoLocoUITests/KPgoLocoUITests.m new file mode 100644 index 0000000..f646ed3 --- /dev/null +++ b/TalkinToTheNet/KPgoLocoUITests/KPgoLocoUITests.m @@ -0,0 +1,40 @@ +// +// KPgoLocoUITests.m +// KPgoLocoUITests +// +// Created by MacMan on 9/25/15. +// Copyright © 2015 MacManApp. All rights reserved. +// + +#import + +@interface KPgoLocoUITests : XCTestCase + +@end + +@implementation KPgoLocoUITests + +- (void)setUp { + [super setUp]; + + // Put setup code here. This method is called before the invocation of each test method in the class. + + // In UI tests it is usually best to stop immediately when a failure occurs. + self.continueAfterFailure = NO; + // UI tests must launch the application that they test. Doing this in setup will make sure it happens for each test method. + [[[XCUIApplication alloc] init] launch]; + + // In UI tests it’s important to set the initial state - such as interface orientation - required for your tests before they run. The setUp method is a good place to do this. +} + +- (void)tearDown { + // Put teardown code here. This method is called after the invocation of each test method in the class. + [super tearDown]; +} + +- (void)testExample { + // Use recording to get started writing UI tests. + // Use XCTAssert and related functions to verify your tests produce the correct results. +} + +@end diff --git a/TalkinToTheNet/Podfile b/TalkinToTheNet/Podfile new file mode 100644 index 0000000..4a4d615 --- /dev/null +++ b/TalkinToTheNet/Podfile @@ -0,0 +1,20 @@ + + +# Uncomment this line to define a global platform for your project +# platform :ios, '6.0' + +target 'KPgoLoco' do + +end + +target 'KPgoLocoTests' do + +end + +target 'KPgoLocoUITests' do + +end + +pod 'SBJson','~> 4.0.1' + + diff --git a/TalkinToTheNet/Podfile.lock b/TalkinToTheNet/Podfile.lock new file mode 100644 index 0000000..bc1b3ac --- /dev/null +++ b/TalkinToTheNet/Podfile.lock @@ -0,0 +1,10 @@ +PODS: + - SBJson (4.0.2) + +DEPENDENCIES: + - SBJson (~> 4.0.1) + +SPEC CHECKSUMS: + SBJson: c18691cc18375b14664ff0fec841f8c4faef1934 + +COCOAPODS: 0.38.2 diff --git a/TalkinToTheNet/Pods/Headers/Private/SBJson/SBJson4.h b/TalkinToTheNet/Pods/Headers/Private/SBJson/SBJson4.h new file mode 120000 index 0000000..4658fe6 --- /dev/null +++ b/TalkinToTheNet/Pods/Headers/Private/SBJson/SBJson4.h @@ -0,0 +1 @@ +../../../SBJson/src/main/objc/SBJson4.h \ No newline at end of file diff --git a/TalkinToTheNet/Pods/Headers/Private/SBJson/SBJson4Parser.h b/TalkinToTheNet/Pods/Headers/Private/SBJson/SBJson4Parser.h new file mode 120000 index 0000000..871e880 --- /dev/null +++ b/TalkinToTheNet/Pods/Headers/Private/SBJson/SBJson4Parser.h @@ -0,0 +1 @@ +../../../SBJson/src/main/objc/SBJson4Parser.h \ No newline at end of file diff --git a/TalkinToTheNet/Pods/Headers/Private/SBJson/SBJson4StreamParser.h b/TalkinToTheNet/Pods/Headers/Private/SBJson/SBJson4StreamParser.h new file mode 120000 index 0000000..6c6eb19 --- /dev/null +++ b/TalkinToTheNet/Pods/Headers/Private/SBJson/SBJson4StreamParser.h @@ -0,0 +1 @@ +../../../SBJson/src/main/objc/SBJson4StreamParser.h \ No newline at end of file diff --git a/TalkinToTheNet/Pods/Headers/Private/SBJson/SBJson4StreamParserState.h b/TalkinToTheNet/Pods/Headers/Private/SBJson/SBJson4StreamParserState.h new file mode 120000 index 0000000..59fe418 --- /dev/null +++ b/TalkinToTheNet/Pods/Headers/Private/SBJson/SBJson4StreamParserState.h @@ -0,0 +1 @@ +../../../SBJson/src/main/objc/SBJson4StreamParserState.h \ No newline at end of file diff --git a/TalkinToTheNet/Pods/Headers/Private/SBJson/SBJson4StreamTokeniser.h b/TalkinToTheNet/Pods/Headers/Private/SBJson/SBJson4StreamTokeniser.h new file mode 120000 index 0000000..25f9efc --- /dev/null +++ b/TalkinToTheNet/Pods/Headers/Private/SBJson/SBJson4StreamTokeniser.h @@ -0,0 +1 @@ +../../../SBJson/src/main/objc/SBJson4StreamTokeniser.h \ No newline at end of file diff --git a/TalkinToTheNet/Pods/Headers/Private/SBJson/SBJson4StreamWriter.h b/TalkinToTheNet/Pods/Headers/Private/SBJson/SBJson4StreamWriter.h new file mode 120000 index 0000000..914f9de --- /dev/null +++ b/TalkinToTheNet/Pods/Headers/Private/SBJson/SBJson4StreamWriter.h @@ -0,0 +1 @@ +../../../SBJson/src/main/objc/SBJson4StreamWriter.h \ No newline at end of file diff --git a/TalkinToTheNet/Pods/Headers/Private/SBJson/SBJson4StreamWriterState.h b/TalkinToTheNet/Pods/Headers/Private/SBJson/SBJson4StreamWriterState.h new file mode 120000 index 0000000..9a3cc19 --- /dev/null +++ b/TalkinToTheNet/Pods/Headers/Private/SBJson/SBJson4StreamWriterState.h @@ -0,0 +1 @@ +../../../SBJson/src/main/objc/SBJson4StreamWriterState.h \ No newline at end of file diff --git a/TalkinToTheNet/Pods/Headers/Private/SBJson/SBJson4Writer.h b/TalkinToTheNet/Pods/Headers/Private/SBJson/SBJson4Writer.h new file mode 120000 index 0000000..6642acf --- /dev/null +++ b/TalkinToTheNet/Pods/Headers/Private/SBJson/SBJson4Writer.h @@ -0,0 +1 @@ +../../../SBJson/src/main/objc/SBJson4Writer.h \ No newline at end of file diff --git a/TalkinToTheNet/Pods/Headers/Public/SBJson/SBJson4.h b/TalkinToTheNet/Pods/Headers/Public/SBJson/SBJson4.h new file mode 120000 index 0000000..4658fe6 --- /dev/null +++ b/TalkinToTheNet/Pods/Headers/Public/SBJson/SBJson4.h @@ -0,0 +1 @@ +../../../SBJson/src/main/objc/SBJson4.h \ No newline at end of file diff --git a/TalkinToTheNet/Pods/Headers/Public/SBJson/SBJson4Parser.h b/TalkinToTheNet/Pods/Headers/Public/SBJson/SBJson4Parser.h new file mode 120000 index 0000000..871e880 --- /dev/null +++ b/TalkinToTheNet/Pods/Headers/Public/SBJson/SBJson4Parser.h @@ -0,0 +1 @@ +../../../SBJson/src/main/objc/SBJson4Parser.h \ No newline at end of file diff --git a/TalkinToTheNet/Pods/Headers/Public/SBJson/SBJson4StreamParser.h b/TalkinToTheNet/Pods/Headers/Public/SBJson/SBJson4StreamParser.h new file mode 120000 index 0000000..6c6eb19 --- /dev/null +++ b/TalkinToTheNet/Pods/Headers/Public/SBJson/SBJson4StreamParser.h @@ -0,0 +1 @@ +../../../SBJson/src/main/objc/SBJson4StreamParser.h \ No newline at end of file diff --git a/TalkinToTheNet/Pods/Headers/Public/SBJson/SBJson4StreamTokeniser.h b/TalkinToTheNet/Pods/Headers/Public/SBJson/SBJson4StreamTokeniser.h new file mode 120000 index 0000000..25f9efc --- /dev/null +++ b/TalkinToTheNet/Pods/Headers/Public/SBJson/SBJson4StreamTokeniser.h @@ -0,0 +1 @@ +../../../SBJson/src/main/objc/SBJson4StreamTokeniser.h \ No newline at end of file diff --git a/TalkinToTheNet/Pods/Headers/Public/SBJson/SBJson4StreamWriter.h b/TalkinToTheNet/Pods/Headers/Public/SBJson/SBJson4StreamWriter.h new file mode 120000 index 0000000..914f9de --- /dev/null +++ b/TalkinToTheNet/Pods/Headers/Public/SBJson/SBJson4StreamWriter.h @@ -0,0 +1 @@ +../../../SBJson/src/main/objc/SBJson4StreamWriter.h \ No newline at end of file diff --git a/TalkinToTheNet/Pods/Headers/Public/SBJson/SBJson4Writer.h b/TalkinToTheNet/Pods/Headers/Public/SBJson/SBJson4Writer.h new file mode 120000 index 0000000..6642acf --- /dev/null +++ b/TalkinToTheNet/Pods/Headers/Public/SBJson/SBJson4Writer.h @@ -0,0 +1 @@ +../../../SBJson/src/main/objc/SBJson4Writer.h \ No newline at end of file diff --git a/TalkinToTheNet/Pods/Manifest.lock b/TalkinToTheNet/Pods/Manifest.lock new file mode 100644 index 0000000..bc1b3ac --- /dev/null +++ b/TalkinToTheNet/Pods/Manifest.lock @@ -0,0 +1,10 @@ +PODS: + - SBJson (4.0.2) + +DEPENDENCIES: + - SBJson (~> 4.0.1) + +SPEC CHECKSUMS: + SBJson: c18691cc18375b14664ff0fec841f8c4faef1934 + +COCOAPODS: 0.38.2 diff --git a/TalkinToTheNet/Pods/Pods.xcodeproj/project.pbxproj b/TalkinToTheNet/Pods/Pods.xcodeproj/project.pbxproj new file mode 100644 index 0000000..abbf9e8 --- /dev/null +++ b/TalkinToTheNet/Pods/Pods.xcodeproj/project.pbxproj @@ -0,0 +1,821 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 46; + objects = { + +/* Begin PBXBuildFile section */ + 06D640F17F8708919C4694367BE9789B /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2A2D3DF39B6722E390781D5FBD36FA04 /* Foundation.framework */; }; + 0A872DBBBB6E42315C084FE3546349FF /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2A2D3DF39B6722E390781D5FBD36FA04 /* Foundation.framework */; }; + 0E3CCF222BFC3623403D3F7AE6AA9360 /* SBJson4StreamWriter.h in Headers */ = {isa = PBXBuildFile; fileRef = 417746214AF8D50F5FEAD3B015B61D3E /* SBJson4StreamWriter.h */; }; + 1387DD5E5C04D76B96FF8BA2CEE6D75B /* Pods-KPgoLoco-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 1DCF1EE66AA4F11D3A6EA163503EE58C /* Pods-KPgoLoco-dummy.m */; }; + 25865D8C260D6DD5060FA6BF2CDCEF63 /* SBJson4StreamParserState.m in Sources */ = {isa = PBXBuildFile; fileRef = 21E68DBB03F67449FD0C848F026E39BA /* SBJson4StreamParserState.m */; settings = {COMPILER_FLAGS = "-DOS_OBJECT_USE_OBJC=0"; }; }; + 2C567258E5478913B962BF4833E29DC6 /* Pods-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 849B96F133938A5A5CDF2E7E39333F58 /* Pods-dummy.m */; }; + 324F6D0610EA4B7B8B16A16577985D70 /* SBJson4Writer.h in Headers */ = {isa = PBXBuildFile; fileRef = 64E85E3B3684C59727C3A7995798894A /* SBJson4Writer.h */; }; + 340D8CFA52B0BE0D673A34D0B64D06C8 /* Pods-KPgoLocoTests-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 986FFF0F745C21A9EA82D14E09E078A4 /* Pods-KPgoLocoTests-dummy.m */; }; + 35E4A1BD8E6CCB172ED5A025CFAC0141 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2A2D3DF39B6722E390781D5FBD36FA04 /* Foundation.framework */; }; + 3910A908CECB0CD09EA36D4DDEA43033 /* SBJson4StreamTokeniser.m in Sources */ = {isa = PBXBuildFile; fileRef = 7EFB8D4DA931A5F643D68614A468BB16 /* SBJson4StreamTokeniser.m */; settings = {COMPILER_FLAGS = "-DOS_OBJECT_USE_OBJC=0"; }; }; + 47AED75EFB2999476EB3A89D184A3873 /* Pods-KPgoLocoUITests-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 0C7F5904F649C903EE566FDB6BD83EB0 /* Pods-KPgoLocoUITests-dummy.m */; }; + 56D28D0FA8E17FBD2192E2AC8E2DD811 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2A2D3DF39B6722E390781D5FBD36FA04 /* Foundation.framework */; }; + 57BED80A7546C0C8F1AD9B6FB0970694 /* SBJson4StreamWriterState.m in Sources */ = {isa = PBXBuildFile; fileRef = E4C12E57B5A16453D8ADF2325C1A3E0F /* SBJson4StreamWriterState.m */; settings = {COMPILER_FLAGS = "-DOS_OBJECT_USE_OBJC=0"; }; }; + 57C0948095E8040D0F37F9A42864EE4E /* SBJson4StreamWriterState.h in Headers */ = {isa = PBXBuildFile; fileRef = 2BA38E550ED4E39ED1515BFCDC0E5C19 /* SBJson4StreamWriterState.h */; }; + 609D01EB009DF2C85A0ACA2E9091455C /* SBJson4Parser.h in Headers */ = {isa = PBXBuildFile; fileRef = AE737516A7EB57B12E7ED7F405E883A5 /* SBJson4Parser.h */; }; + 6BFD9A03DCA18163F30A961A10C6715F /* SBJson4StreamParser.m in Sources */ = {isa = PBXBuildFile; fileRef = 2E2E327CD09C1BC94041DD242C05582A /* SBJson4StreamParser.m */; settings = {COMPILER_FLAGS = "-DOS_OBJECT_USE_OBJC=0"; }; }; + 7154C37802DF22EC327D69AEEC514352 /* SBJson4Writer.m in Sources */ = {isa = PBXBuildFile; fileRef = 5E28CB8E2E6F19F0513ADD3B5A769C03 /* SBJson4Writer.m */; settings = {COMPILER_FLAGS = "-DOS_OBJECT_USE_OBJC=0"; }; }; + 766502DC08D1679DB7C79514A1AF02AE /* SBJson4.h in Headers */ = {isa = PBXBuildFile; fileRef = E7D2A110CE36949E54D71720E4D24A46 /* SBJson4.h */; }; + AB49879B437E0FC10BF2D6800D3077EE /* SBJson-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = ADA4DAB2B49278CD70177B30E893CB8B /* SBJson-dummy.m */; }; + AFFD9A2130914CCBC96081566F1F1D47 /* SBJson4StreamParserState.h in Headers */ = {isa = PBXBuildFile; fileRef = 7D446DCF1A66A98FBE641937E99EC589 /* SBJson4StreamParserState.h */; }; + CB4E0B5C9CA8A01C49534E731CDF4C4B /* SBJson4StreamTokeniser.h in Headers */ = {isa = PBXBuildFile; fileRef = 5B1ACDE88047793AA42FD60C182BA88F /* SBJson4StreamTokeniser.h */; }; + D3670900B812CE45C3B3D6E8C94602E6 /* SBJson4StreamWriter.m in Sources */ = {isa = PBXBuildFile; fileRef = CB2FF8C96735B64F46538E36D9A4F18C /* SBJson4StreamWriter.m */; settings = {COMPILER_FLAGS = "-DOS_OBJECT_USE_OBJC=0"; }; }; + D6664A79CCF870B9CA9A1166D61099F4 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2A2D3DF39B6722E390781D5FBD36FA04 /* Foundation.framework */; }; + EA163B8A37D074F4FD60613BE76D6873 /* SBJson4StreamParser.h in Headers */ = {isa = PBXBuildFile; fileRef = 65E806CBDD6EC532C3B418C772844378 /* SBJson4StreamParser.h */; }; + F3977EA362B1AFA903A6AA054EFEFEB1 /* SBJson4Parser.m in Sources */ = {isa = PBXBuildFile; fileRef = 94480C189117D3EEB02F13E758A1BD2C /* SBJson4Parser.m */; settings = {COMPILER_FLAGS = "-DOS_OBJECT_USE_OBJC=0"; }; }; +/* End PBXBuildFile section */ + +/* Begin PBXContainerItemProxy section */ + 335CA9223B496BC4F90374CFC3E19593 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; + proxyType = 1; + remoteGlobalIDString = 1B79616717E212DBA705906E128C4C9B; + remoteInfo = SBJson; + }; + 72E85A5DAEA4F4D8DCCC22C46C7AA4D5 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; + proxyType = 1; + remoteGlobalIDString = 1B79616717E212DBA705906E128C4C9B; + remoteInfo = SBJson; + }; + CD481B90751F1EC82775DBA6720B476E /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; + proxyType = 1; + remoteGlobalIDString = 1B79616717E212DBA705906E128C4C9B; + remoteInfo = SBJson; + }; + D82FDA801BEF650F7B4F86D204BCAB7B /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; + proxyType = 1; + remoteGlobalIDString = 1B79616717E212DBA705906E128C4C9B; + remoteInfo = SBJson; + }; +/* End PBXContainerItemProxy section */ + +/* Begin PBXFileReference section */ + 0973F592C708475732A6DD8FC840CA19 /* Pods-KPgoLoco.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-KPgoLoco.release.xcconfig"; sourceTree = ""; }; + 0A449690E92E303AD59064DDE6740F18 /* libPods.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libPods.a; sourceTree = BUILT_PRODUCTS_DIR; }; + 0AA032F808E73DF290CDBB355689A85E /* Pods-KPgoLoco-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-KPgoLoco-acknowledgements.plist"; sourceTree = ""; }; + 0C7F5904F649C903EE566FDB6BD83EB0 /* Pods-KPgoLocoUITests-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-KPgoLocoUITests-dummy.m"; sourceTree = ""; }; + 0DECD0866208CD9E79A23413472F0BBC /* Pods-KPgoLocoUITests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-KPgoLocoUITests.release.xcconfig"; sourceTree = ""; }; + 142A88199B0964001B34B6E9AAB15A4B /* Pods-resources.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-resources.sh"; sourceTree = ""; }; + 1DCF1EE66AA4F11D3A6EA163503EE58C /* Pods-KPgoLoco-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-KPgoLoco-dummy.m"; sourceTree = ""; }; + 1FFD5490C2AEC3215B28EF6D6CB03FC6 /* libPods-KPgoLocoTests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-KPgoLocoTests.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + 2014D531C464FF3AF4046241561F6002 /* Pods-KPgoLocoTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-KPgoLocoTests.release.xcconfig"; sourceTree = ""; }; + 21E68DBB03F67449FD0C848F026E39BA /* SBJson4StreamParserState.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = SBJson4StreamParserState.m; path = src/main/objc/SBJson4StreamParserState.m; sourceTree = ""; }; + 2A2D3DF39B6722E390781D5FBD36FA04 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS8.3.sdk/System/Library/Frameworks/Foundation.framework; sourceTree = DEVELOPER_DIR; }; + 2BA38E550ED4E39ED1515BFCDC0E5C19 /* SBJson4StreamWriterState.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = SBJson4StreamWriterState.h; path = src/main/objc/SBJson4StreamWriterState.h; sourceTree = ""; }; + 2E2E327CD09C1BC94041DD242C05582A /* SBJson4StreamParser.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = SBJson4StreamParser.m; path = src/main/objc/SBJson4StreamParser.m; sourceTree = ""; }; + 37F76F59CE505FBF0D0E8BED401CEB24 /* Pods-KPgoLocoTests-resources.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-KPgoLocoTests-resources.sh"; sourceTree = ""; }; + 3BDD26090D530B8711880D6A0400AFF8 /* Pods-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-acknowledgements.plist"; sourceTree = ""; }; + 3E29A18379B31B020BB8B65FE1C5DDAD /* Pods-KPgoLocoUITests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-KPgoLocoUITests.debug.xcconfig"; sourceTree = ""; }; + 417746214AF8D50F5FEAD3B015B61D3E /* SBJson4StreamWriter.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = SBJson4StreamWriter.h; path = src/main/objc/SBJson4StreamWriter.h; sourceTree = ""; }; + 46AD24D65A88EC998F0408C6283F5ACA /* Pods-KPgoLoco-resources.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-KPgoLoco-resources.sh"; sourceTree = ""; }; + 4FF9A0393935D4CB4CEF478DFD79A627 /* Pods-KPgoLocoUITests-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-KPgoLocoUITests-acknowledgements.markdown"; sourceTree = ""; }; + 5017E78B3288AE0A6A491E6431C72B12 /* Pods-KPgoLocoUITests-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-KPgoLocoUITests-acknowledgements.plist"; sourceTree = ""; }; + 5564F81DDFBD41E84D1991A113F5FBAA /* libPods-KPgoLocoUITests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-KPgoLocoUITests.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + 5B1ACDE88047793AA42FD60C182BA88F /* SBJson4StreamTokeniser.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = SBJson4StreamTokeniser.h; path = src/main/objc/SBJson4StreamTokeniser.h; sourceTree = ""; }; + 5BE190D2AB19259B0FC5914B7E94C90D /* SBJson-Private.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "SBJson-Private.xcconfig"; sourceTree = ""; }; + 5BE347DDC7C5A39D4EB6B0285FF317FA /* libSBJson.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libSBJson.a; sourceTree = BUILT_PRODUCTS_DIR; }; + 5CA75256C897297039CC50EFB03AB3A8 /* Pods-KPgoLoco-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-KPgoLoco-acknowledgements.markdown"; sourceTree = ""; }; + 5E28CB8E2E6F19F0513ADD3B5A769C03 /* SBJson4Writer.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = SBJson4Writer.m; path = src/main/objc/SBJson4Writer.m; sourceTree = ""; }; + 64E85E3B3684C59727C3A7995798894A /* SBJson4Writer.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = SBJson4Writer.h; path = src/main/objc/SBJson4Writer.h; sourceTree = ""; }; + 65E806CBDD6EC532C3B418C772844378 /* SBJson4StreamParser.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = SBJson4StreamParser.h; path = src/main/objc/SBJson4StreamParser.h; sourceTree = ""; }; + 6E41E4CD9FD800431A2B443BB2B6A7D4 /* Pods-KPgoLoco.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-KPgoLoco.debug.xcconfig"; sourceTree = ""; }; + 75BF7904955C6C3D2E4892BDD19BA204 /* Pods-KPgoLocoUITests-resources.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-KPgoLocoUITests-resources.sh"; sourceTree = ""; }; + 7D446DCF1A66A98FBE641937E99EC589 /* SBJson4StreamParserState.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = SBJson4StreamParserState.h; path = src/main/objc/SBJson4StreamParserState.h; sourceTree = ""; }; + 7DB683DEE1F23F98FF043425DDF084CF /* Pods.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Pods.debug.xcconfig; sourceTree = ""; }; + 7EFB8D4DA931A5F643D68614A468BB16 /* SBJson4StreamTokeniser.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = SBJson4StreamTokeniser.m; path = src/main/objc/SBJson4StreamTokeniser.m; sourceTree = ""; }; + 849B96F133938A5A5CDF2E7E39333F58 /* Pods-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-dummy.m"; sourceTree = ""; }; + 8F65DA352344C886BA8B8A2B17BE255E /* Pods-KPgoLocoTests-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-KPgoLocoTests-acknowledgements.plist"; sourceTree = ""; }; + 94480C189117D3EEB02F13E758A1BD2C /* SBJson4Parser.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = SBJson4Parser.m; path = src/main/objc/SBJson4Parser.m; sourceTree = ""; }; + 9726B9DFA36787A109DECD8D624A992E /* Pods-KPgoLocoTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-KPgoLocoTests.debug.xcconfig"; sourceTree = ""; }; + 986FFF0F745C21A9EA82D14E09E078A4 /* Pods-KPgoLocoTests-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-KPgoLocoTests-dummy.m"; sourceTree = ""; }; + A58E781F1EB1201D09FC331C01EE4E04 /* SBJson-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "SBJson-prefix.pch"; sourceTree = ""; }; + ADA4DAB2B49278CD70177B30E893CB8B /* SBJson-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "SBJson-dummy.m"; sourceTree = ""; }; + AE737516A7EB57B12E7ED7F405E883A5 /* SBJson4Parser.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = SBJson4Parser.h; path = src/main/objc/SBJson4Parser.h; sourceTree = ""; }; + B515746E71094C7CCA4D1615C8313326 /* Pods.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Pods.release.xcconfig; sourceTree = ""; }; + BA6428E9F66FD5A23C0A2E06ED26CD2F /* Podfile */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = Podfile; path = ../Podfile; sourceTree = SOURCE_ROOT; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + CB2FF8C96735B64F46538E36D9A4F18C /* SBJson4StreamWriter.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = SBJson4StreamWriter.m; path = src/main/objc/SBJson4StreamWriter.m; sourceTree = ""; }; + CDB60B4B206179E8A2EA986B487D377B /* libPods-KPgoLoco.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-KPgoLoco.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + CFB447EC21F99828ECD55E1976724610 /* Pods-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-acknowledgements.markdown"; sourceTree = ""; }; + D48214AD6C95ADB17AA25B251F6ED948 /* SBJson.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = SBJson.xcconfig; sourceTree = ""; }; + E3618F63E6A3C2CB22796ACD09A0716D /* Pods-KPgoLocoTests-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-KPgoLocoTests-acknowledgements.markdown"; sourceTree = ""; }; + E4C12E57B5A16453D8ADF2325C1A3E0F /* SBJson4StreamWriterState.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = SBJson4StreamWriterState.m; path = src/main/objc/SBJson4StreamWriterState.m; sourceTree = ""; }; + E7D2A110CE36949E54D71720E4D24A46 /* SBJson4.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = SBJson4.h; path = src/main/objc/SBJson4.h; sourceTree = ""; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 18FF2B172DE1BEC5068DAE1CF40DD185 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 35E4A1BD8E6CCB172ED5A025CFAC0141 /* Foundation.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 3BD03306B2BBA70C41440B5B3FD15530 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + D6664A79CCF870B9CA9A1166D61099F4 /* Foundation.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 45D29A1B870AE8CBBFAEF31A612B3C4E /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 56D28D0FA8E17FBD2192E2AC8E2DD811 /* Foundation.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 5DF9BED23391173D19B3843FE87225D1 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 0A872DBBBB6E42315C084FE3546349FF /* Foundation.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + BEA6902F857E96BBC7CBD16208A9125A /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 06D640F17F8708919C4694367BE9789B /* Foundation.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 3E383A3AB7FF8FA00DBAA970EC89DB43 /* SBJson */ = { + isa = PBXGroup; + children = ( + E7D2A110CE36949E54D71720E4D24A46 /* SBJson4.h */, + AE737516A7EB57B12E7ED7F405E883A5 /* SBJson4Parser.h */, + 94480C189117D3EEB02F13E758A1BD2C /* SBJson4Parser.m */, + 65E806CBDD6EC532C3B418C772844378 /* SBJson4StreamParser.h */, + 2E2E327CD09C1BC94041DD242C05582A /* SBJson4StreamParser.m */, + 7D446DCF1A66A98FBE641937E99EC589 /* SBJson4StreamParserState.h */, + 21E68DBB03F67449FD0C848F026E39BA /* SBJson4StreamParserState.m */, + 5B1ACDE88047793AA42FD60C182BA88F /* SBJson4StreamTokeniser.h */, + 7EFB8D4DA931A5F643D68614A468BB16 /* SBJson4StreamTokeniser.m */, + 417746214AF8D50F5FEAD3B015B61D3E /* SBJson4StreamWriter.h */, + CB2FF8C96735B64F46538E36D9A4F18C /* SBJson4StreamWriter.m */, + 2BA38E550ED4E39ED1515BFCDC0E5C19 /* SBJson4StreamWriterState.h */, + E4C12E57B5A16453D8ADF2325C1A3E0F /* SBJson4StreamWriterState.m */, + 64E85E3B3684C59727C3A7995798894A /* SBJson4Writer.h */, + 5E28CB8E2E6F19F0513ADD3B5A769C03 /* SBJson4Writer.m */, + CDFE52EF9FAD897F5FC6BCA72E7B835B /* Support Files */, + ); + path = SBJson; + sourceTree = ""; + }; + 53F661C0CA7190D2CF05023FB33D61E4 /* iOS */ = { + isa = PBXGroup; + children = ( + 2A2D3DF39B6722E390781D5FBD36FA04 /* Foundation.framework */, + ); + name = iOS; + sourceTree = ""; + }; + 7DB346D0F39D3F0E887471402A8071AB = { + isa = PBXGroup; + children = ( + BA6428E9F66FD5A23C0A2E06ED26CD2F /* Podfile */, + BC3CA7F9E30CC8F7E2DD044DD34432FC /* Frameworks */, + B35A2BA193447E4ED908EA5A444644C2 /* Pods */, + CCA510CFBEA2D207524CDA0D73C3B561 /* Products */, + CC21C96CDA65068A05755F3104C2DE18 /* Targets Support Files */, + ); + sourceTree = ""; + }; + B35A2BA193447E4ED908EA5A444644C2 /* Pods */ = { + isa = PBXGroup; + children = ( + 3E383A3AB7FF8FA00DBAA970EC89DB43 /* SBJson */, + ); + name = Pods; + sourceTree = ""; + }; + BC3CA7F9E30CC8F7E2DD044DD34432FC /* Frameworks */ = { + isa = PBXGroup; + children = ( + 53F661C0CA7190D2CF05023FB33D61E4 /* iOS */, + ); + name = Frameworks; + sourceTree = ""; + }; + C8EE0176DE43D041C572EEF314238F33 /* Pods-KPgoLocoTests */ = { + isa = PBXGroup; + children = ( + E3618F63E6A3C2CB22796ACD09A0716D /* Pods-KPgoLocoTests-acknowledgements.markdown */, + 8F65DA352344C886BA8B8A2B17BE255E /* Pods-KPgoLocoTests-acknowledgements.plist */, + 986FFF0F745C21A9EA82D14E09E078A4 /* Pods-KPgoLocoTests-dummy.m */, + 37F76F59CE505FBF0D0E8BED401CEB24 /* Pods-KPgoLocoTests-resources.sh */, + 9726B9DFA36787A109DECD8D624A992E /* Pods-KPgoLocoTests.debug.xcconfig */, + 2014D531C464FF3AF4046241561F6002 /* Pods-KPgoLocoTests.release.xcconfig */, + ); + name = "Pods-KPgoLocoTests"; + path = "Target Support Files/Pods-KPgoLocoTests"; + sourceTree = ""; + }; + CC21C96CDA65068A05755F3104C2DE18 /* Targets Support Files */ = { + isa = PBXGroup; + children = ( + D87742BEDC5D2908769D243AE857940E /* Pods */, + E8C345D96FC3552913824806AB879D9D /* Pods-KPgoLoco */, + C8EE0176DE43D041C572EEF314238F33 /* Pods-KPgoLocoTests */, + FC326E959C0DE79230D50484CFC6C688 /* Pods-KPgoLocoUITests */, + ); + name = "Targets Support Files"; + sourceTree = ""; + }; + CCA510CFBEA2D207524CDA0D73C3B561 /* Products */ = { + isa = PBXGroup; + children = ( + 0A449690E92E303AD59064DDE6740F18 /* libPods.a */, + CDB60B4B206179E8A2EA986B487D377B /* libPods-KPgoLoco.a */, + 1FFD5490C2AEC3215B28EF6D6CB03FC6 /* libPods-KPgoLocoTests.a */, + 5564F81DDFBD41E84D1991A113F5FBAA /* libPods-KPgoLocoUITests.a */, + 5BE347DDC7C5A39D4EB6B0285FF317FA /* libSBJson.a */, + ); + name = Products; + sourceTree = ""; + }; + CDFE52EF9FAD897F5FC6BCA72E7B835B /* Support Files */ = { + isa = PBXGroup; + children = ( + D48214AD6C95ADB17AA25B251F6ED948 /* SBJson.xcconfig */, + 5BE190D2AB19259B0FC5914B7E94C90D /* SBJson-Private.xcconfig */, + ADA4DAB2B49278CD70177B30E893CB8B /* SBJson-dummy.m */, + A58E781F1EB1201D09FC331C01EE4E04 /* SBJson-prefix.pch */, + ); + name = "Support Files"; + path = "../Target Support Files/SBJson"; + sourceTree = ""; + }; + D87742BEDC5D2908769D243AE857940E /* Pods */ = { + isa = PBXGroup; + children = ( + CFB447EC21F99828ECD55E1976724610 /* Pods-acknowledgements.markdown */, + 3BDD26090D530B8711880D6A0400AFF8 /* Pods-acknowledgements.plist */, + 849B96F133938A5A5CDF2E7E39333F58 /* Pods-dummy.m */, + 142A88199B0964001B34B6E9AAB15A4B /* Pods-resources.sh */, + 7DB683DEE1F23F98FF043425DDF084CF /* Pods.debug.xcconfig */, + B515746E71094C7CCA4D1615C8313326 /* Pods.release.xcconfig */, + ); + name = Pods; + path = "Target Support Files/Pods"; + sourceTree = ""; + }; + E8C345D96FC3552913824806AB879D9D /* Pods-KPgoLoco */ = { + isa = PBXGroup; + children = ( + 5CA75256C897297039CC50EFB03AB3A8 /* Pods-KPgoLoco-acknowledgements.markdown */, + 0AA032F808E73DF290CDBB355689A85E /* Pods-KPgoLoco-acknowledgements.plist */, + 1DCF1EE66AA4F11D3A6EA163503EE58C /* Pods-KPgoLoco-dummy.m */, + 46AD24D65A88EC998F0408C6283F5ACA /* Pods-KPgoLoco-resources.sh */, + 6E41E4CD9FD800431A2B443BB2B6A7D4 /* Pods-KPgoLoco.debug.xcconfig */, + 0973F592C708475732A6DD8FC840CA19 /* Pods-KPgoLoco.release.xcconfig */, + ); + name = "Pods-KPgoLoco"; + path = "Target Support Files/Pods-KPgoLoco"; + sourceTree = ""; + }; + FC326E959C0DE79230D50484CFC6C688 /* Pods-KPgoLocoUITests */ = { + isa = PBXGroup; + children = ( + 4FF9A0393935D4CB4CEF478DFD79A627 /* Pods-KPgoLocoUITests-acknowledgements.markdown */, + 5017E78B3288AE0A6A491E6431C72B12 /* Pods-KPgoLocoUITests-acknowledgements.plist */, + 0C7F5904F649C903EE566FDB6BD83EB0 /* Pods-KPgoLocoUITests-dummy.m */, + 75BF7904955C6C3D2E4892BDD19BA204 /* Pods-KPgoLocoUITests-resources.sh */, + 3E29A18379B31B020BB8B65FE1C5DDAD /* Pods-KPgoLocoUITests.debug.xcconfig */, + 0DECD0866208CD9E79A23413472F0BBC /* Pods-KPgoLocoUITests.release.xcconfig */, + ); + name = "Pods-KPgoLocoUITests"; + path = "Target Support Files/Pods-KPgoLocoUITests"; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXHeadersBuildPhase section */ + C8AE4A191F006D3E1D74546A5A7A6EFE /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 766502DC08D1679DB7C79514A1AF02AE /* SBJson4.h in Headers */, + 609D01EB009DF2C85A0ACA2E9091455C /* SBJson4Parser.h in Headers */, + EA163B8A37D074F4FD60613BE76D6873 /* SBJson4StreamParser.h in Headers */, + AFFD9A2130914CCBC96081566F1F1D47 /* SBJson4StreamParserState.h in Headers */, + CB4E0B5C9CA8A01C49534E731CDF4C4B /* SBJson4StreamTokeniser.h in Headers */, + 0E3CCF222BFC3623403D3F7AE6AA9360 /* SBJson4StreamWriter.h in Headers */, + 57C0948095E8040D0F37F9A42864EE4E /* SBJson4StreamWriterState.h in Headers */, + 324F6D0610EA4B7B8B16A16577985D70 /* SBJson4Writer.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXHeadersBuildPhase section */ + +/* Begin PBXNativeTarget section */ + 1B79616717E212DBA705906E128C4C9B /* SBJson */ = { + isa = PBXNativeTarget; + buildConfigurationList = 90CA0E968E6A5874BA9192B42B41AFBA /* Build configuration list for PBXNativeTarget "SBJson" */; + buildPhases = ( + 5B65AFA84DFE88BCF3AE5520E35FEFBD /* Sources */, + 5DF9BED23391173D19B3843FE87225D1 /* Frameworks */, + C8AE4A191F006D3E1D74546A5A7A6EFE /* Headers */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = SBJson; + productName = SBJson; + productReference = 5BE347DDC7C5A39D4EB6B0285FF317FA /* libSBJson.a */; + productType = "com.apple.product-type.library.static"; + }; + 2D6CE86DE1A080BAD9FDA6DA5EC5037D /* Pods-KPgoLoco */ = { + isa = PBXNativeTarget; + buildConfigurationList = 85D6E6BBA617B5E3B85F247AAB04E0E9 /* Build configuration list for PBXNativeTarget "Pods-KPgoLoco" */; + buildPhases = ( + 8F0F9065A8F1F9A495D2CD4312FEA2BC /* Sources */, + 45D29A1B870AE8CBBFAEF31A612B3C4E /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + 0A7EA7C40C03BE9565EEF7F54F9F472A /* PBXTargetDependency */, + ); + name = "Pods-KPgoLoco"; + productName = "Pods-KPgoLoco"; + productReference = CDB60B4B206179E8A2EA986B487D377B /* libPods-KPgoLoco.a */; + productType = "com.apple.product-type.library.static"; + }; + 3AFF0E09A1004E6C14B9425B3B2C8CA3 /* Pods-KPgoLocoTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = A12E2CE16CC6DBFE8E7816F40C4C5C37 /* Build configuration list for PBXNativeTarget "Pods-KPgoLocoTests" */; + buildPhases = ( + 90258A814583E0B2F9B9D37E878FE2BA /* Sources */, + BEA6902F857E96BBC7CBD16208A9125A /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + B9824FD713C605BEFE6FBC6CA14B6D27 /* PBXTargetDependency */, + ); + name = "Pods-KPgoLocoTests"; + productName = "Pods-KPgoLocoTests"; + productReference = 1FFD5490C2AEC3215B28EF6D6CB03FC6 /* libPods-KPgoLocoTests.a */; + productType = "com.apple.product-type.library.static"; + }; + 809EBF3C29B000EA972C93F1A6889511 /* Pods */ = { + isa = PBXNativeTarget; + buildConfigurationList = C638F8EFA97E3A2E2D3AB4276576CF50 /* Build configuration list for PBXNativeTarget "Pods" */; + buildPhases = ( + 47872DB5105D8404E8C251BC1A28C86B /* Sources */, + 18FF2B172DE1BEC5068DAE1CF40DD185 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + 833F2E4C8BF8AAF2F74F8C2B37514C95 /* PBXTargetDependency */, + ); + name = Pods; + productName = Pods; + productReference = 0A449690E92E303AD59064DDE6740F18 /* libPods.a */; + productType = "com.apple.product-type.library.static"; + }; + EEDA3C92D9160A6F43515E04410FDF5A /* Pods-KPgoLocoUITests */ = { + isa = PBXNativeTarget; + buildConfigurationList = 9189AA5B088E8B4E84AAF3C3602DB44C /* Build configuration list for PBXNativeTarget "Pods-KPgoLocoUITests" */; + buildPhases = ( + DD0CD69E2259CAAB54BB425E5244DF7E /* Sources */, + 3BD03306B2BBA70C41440B5B3FD15530 /* Frameworks */, + ); + buildRules = ( + ); + dependencies = ( + C0B79E88FBA7B513DBAE79A33F0FF314 /* PBXTargetDependency */, + ); + name = "Pods-KPgoLocoUITests"; + productName = "Pods-KPgoLocoUITests"; + productReference = 5564F81DDFBD41E84D1991A113F5FBAA /* libPods-KPgoLocoUITests.a */; + productType = "com.apple.product-type.library.static"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + D41D8CD98F00B204E9800998ECF8427E /* Project object */ = { + isa = PBXProject; + attributes = { + LastSwiftUpdateCheck = 0700; + LastUpgradeCheck = 0700; + }; + buildConfigurationList = 2D8E8EC45A3A1A1D94AE762CB5028504 /* Build configuration list for PBXProject "Pods" */; + compatibilityVersion = "Xcode 3.2"; + developmentRegion = English; + hasScannedForEncodings = 0; + knownRegions = ( + en, + ); + mainGroup = 7DB346D0F39D3F0E887471402A8071AB; + productRefGroup = CCA510CFBEA2D207524CDA0D73C3B561 /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 809EBF3C29B000EA972C93F1A6889511 /* Pods */, + 2D6CE86DE1A080BAD9FDA6DA5EC5037D /* Pods-KPgoLoco */, + 3AFF0E09A1004E6C14B9425B3B2C8CA3 /* Pods-KPgoLocoTests */, + EEDA3C92D9160A6F43515E04410FDF5A /* Pods-KPgoLocoUITests */, + 1B79616717E212DBA705906E128C4C9B /* SBJson */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXSourcesBuildPhase section */ + 47872DB5105D8404E8C251BC1A28C86B /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 2C567258E5478913B962BF4833E29DC6 /* Pods-dummy.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 5B65AFA84DFE88BCF3AE5520E35FEFBD /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + AB49879B437E0FC10BF2D6800D3077EE /* SBJson-dummy.m in Sources */, + F3977EA362B1AFA903A6AA054EFEFEB1 /* SBJson4Parser.m in Sources */, + 6BFD9A03DCA18163F30A961A10C6715F /* SBJson4StreamParser.m in Sources */, + 25865D8C260D6DD5060FA6BF2CDCEF63 /* SBJson4StreamParserState.m in Sources */, + 3910A908CECB0CD09EA36D4DDEA43033 /* SBJson4StreamTokeniser.m in Sources */, + D3670900B812CE45C3B3D6E8C94602E6 /* SBJson4StreamWriter.m in Sources */, + 57BED80A7546C0C8F1AD9B6FB0970694 /* SBJson4StreamWriterState.m in Sources */, + 7154C37802DF22EC327D69AEEC514352 /* SBJson4Writer.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 8F0F9065A8F1F9A495D2CD4312FEA2BC /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 1387DD5E5C04D76B96FF8BA2CEE6D75B /* Pods-KPgoLoco-dummy.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + 90258A814583E0B2F9B9D37E878FE2BA /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 340D8CFA52B0BE0D673A34D0B64D06C8 /* Pods-KPgoLocoTests-dummy.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + DD0CD69E2259CAAB54BB425E5244DF7E /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 47AED75EFB2999476EB3A89D184A3873 /* Pods-KPgoLocoUITests-dummy.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXTargetDependency section */ + 0A7EA7C40C03BE9565EEF7F54F9F472A /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = SBJson; + target = 1B79616717E212DBA705906E128C4C9B /* SBJson */; + targetProxy = D82FDA801BEF650F7B4F86D204BCAB7B /* PBXContainerItemProxy */; + }; + 833F2E4C8BF8AAF2F74F8C2B37514C95 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = SBJson; + target = 1B79616717E212DBA705906E128C4C9B /* SBJson */; + targetProxy = 335CA9223B496BC4F90374CFC3E19593 /* PBXContainerItemProxy */; + }; + B9824FD713C605BEFE6FBC6CA14B6D27 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = SBJson; + target = 1B79616717E212DBA705906E128C4C9B /* SBJson */; + targetProxy = CD481B90751F1EC82775DBA6720B476E /* PBXContainerItemProxy */; + }; + C0B79E88FBA7B513DBAE79A33F0FF314 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + name = SBJson; + target = 1B79616717E212DBA705906E128C4C9B /* SBJson */; + targetProxy = 72E85A5DAEA4F4D8DCCC22C46C7AA4D5 /* PBXContainerItemProxy */; + }; +/* End PBXTargetDependency section */ + +/* Begin XCBuildConfiguration section */ + 2FE0C0C5F699CD86ED4EB5C28503F1F6 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7DB683DEE1F23F98FF043425DDF084CF /* Pods.debug.xcconfig */; + buildSettings = { + ENABLE_STRICT_OBJC_MSGSEND = YES; + IPHONEOS_DEPLOYMENT_TARGET = 9.1; + MTL_ENABLE_DEBUG_INFO = YES; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_NAME = "$(TARGET_NAME)"; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + }; + name = Debug; + }; + 5A343CD033D5F67564168432EBADCBCA /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 6E41E4CD9FD800431A2B443BB2B6A7D4 /* Pods-KPgoLoco.debug.xcconfig */; + buildSettings = { + ENABLE_STRICT_OBJC_MSGSEND = YES; + IPHONEOS_DEPLOYMENT_TARGET = 9.1; + MTL_ENABLE_DEBUG_INFO = YES; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_NAME = "$(TARGET_NAME)"; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + }; + name = Debug; + }; + 681C44EC21FA6CBC2111DFFD391DB209 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 5BE190D2AB19259B0FC5914B7E94C90D /* SBJson-Private.xcconfig */; + buildSettings = { + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_PREFIX_HEADER = "Target Support Files/SBJson/SBJson-prefix.pch"; + IPHONEOS_DEPLOYMENT_TARGET = 9.1; + MTL_ENABLE_DEBUG_INFO = NO; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRODUCT_NAME = "$(TARGET_NAME)"; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + }; + name = Release; + }; + 7B193506258D34C7A460387A3E71436C /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 2014D531C464FF3AF4046241561F6002 /* Pods-KPgoLocoTests.release.xcconfig */; + buildSettings = { + ENABLE_STRICT_OBJC_MSGSEND = YES; + IPHONEOS_DEPLOYMENT_TARGET = 9.1; + MTL_ENABLE_DEBUG_INFO = NO; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_NAME = "$(TARGET_NAME)"; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + }; + name = Release; + }; + 972A43EA06726E7C10919B6678550BDF /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 9726B9DFA36787A109DECD8D624A992E /* Pods-KPgoLocoTests.debug.xcconfig */; + buildSettings = { + ENABLE_STRICT_OBJC_MSGSEND = YES; + IPHONEOS_DEPLOYMENT_TARGET = 9.1; + MTL_ENABLE_DEBUG_INFO = YES; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_NAME = "$(TARGET_NAME)"; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + }; + name = Debug; + }; + A37F6AB4030A251A6BE4504C71255343 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 3E29A18379B31B020BB8B65FE1C5DDAD /* Pods-KPgoLocoUITests.debug.xcconfig */; + buildSettings = { + ENABLE_STRICT_OBJC_MSGSEND = YES; + IPHONEOS_DEPLOYMENT_TARGET = 9.1; + MTL_ENABLE_DEBUG_INFO = YES; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_NAME = "$(TARGET_NAME)"; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + }; + name = Debug; + }; + A39609AFB23B4F09B5D6181F6592322B /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 0973F592C708475732A6DD8FC840CA19 /* Pods-KPgoLoco.release.xcconfig */; + buildSettings = { + ENABLE_STRICT_OBJC_MSGSEND = YES; + IPHONEOS_DEPLOYMENT_TARGET = 9.1; + MTL_ENABLE_DEBUG_INFO = NO; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_NAME = "$(TARGET_NAME)"; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + }; + name = Release; + }; + C074F63C9EE7CB4D8C618390A32CEC35 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + COPY_PHASE_STRIP = NO; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_DYNAMIC_NO_PIC = NO; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_SYMBOLS_PRIVATE_EXTERN = NO; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 9.1; + ONLY_ACTIVE_ARCH = YES; + STRIP_INSTALLED_PRODUCT = NO; + SYMROOT = "${SRCROOT}/../build"; + }; + name = Debug; + }; + C63877BD2520268466B1D425137069A3 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = B515746E71094C7CCA4D1615C8313326 /* Pods.release.xcconfig */; + buildSettings = { + ENABLE_STRICT_OBJC_MSGSEND = YES; + IPHONEOS_DEPLOYMENT_TARGET = 9.1; + MTL_ENABLE_DEBUG_INFO = NO; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_NAME = "$(TARGET_NAME)"; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + }; + name = Release; + }; + D61C74BBD4AC37B31F838B093A5BF60C /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 5BE190D2AB19259B0FC5914B7E94C90D /* SBJson-Private.xcconfig */; + buildSettings = { + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_PREFIX_HEADER = "Target Support Files/SBJson/SBJson-prefix.pch"; + IPHONEOS_DEPLOYMENT_TARGET = 9.1; + MTL_ENABLE_DEBUG_INFO = YES; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PRODUCT_NAME = "$(TARGET_NAME)"; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + }; + name = Debug; + }; + E43846B588E1892F3093F3B7082B6DFB /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + COPY_PHASE_STRIP = YES; + ENABLE_NS_ASSERTIONS = NO; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_PREPROCESSOR_DEFINITIONS = "RELEASE=1"; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 9.1; + STRIP_INSTALLED_PRODUCT = NO; + SYMROOT = "${SRCROOT}/../build"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + F3DE85D1F7DF879CD39EAADA9C6729AC /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 0DECD0866208CD9E79A23413472F0BBC /* Pods-KPgoLocoUITests.release.xcconfig */; + buildSettings = { + ENABLE_STRICT_OBJC_MSGSEND = YES; + IPHONEOS_DEPLOYMENT_TARGET = 9.1; + MTL_ENABLE_DEBUG_INFO = NO; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_NAME = "$(TARGET_NAME)"; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 2D8E8EC45A3A1A1D94AE762CB5028504 /* Build configuration list for PBXProject "Pods" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + C074F63C9EE7CB4D8C618390A32CEC35 /* Debug */, + E43846B588E1892F3093F3B7082B6DFB /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 85D6E6BBA617B5E3B85F247AAB04E0E9 /* Build configuration list for PBXNativeTarget "Pods-KPgoLoco" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 5A343CD033D5F67564168432EBADCBCA /* Debug */, + A39609AFB23B4F09B5D6181F6592322B /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 90CA0E968E6A5874BA9192B42B41AFBA /* Build configuration list for PBXNativeTarget "SBJson" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + D61C74BBD4AC37B31F838B093A5BF60C /* Debug */, + 681C44EC21FA6CBC2111DFFD391DB209 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 9189AA5B088E8B4E84AAF3C3602DB44C /* Build configuration list for PBXNativeTarget "Pods-KPgoLocoUITests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + A37F6AB4030A251A6BE4504C71255343 /* Debug */, + F3DE85D1F7DF879CD39EAADA9C6729AC /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + A12E2CE16CC6DBFE8E7816F40C4C5C37 /* Build configuration list for PBXNativeTarget "Pods-KPgoLocoTests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 972A43EA06726E7C10919B6678550BDF /* Debug */, + 7B193506258D34C7A460387A3E71436C /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + C638F8EFA97E3A2E2D3AB4276576CF50 /* Build configuration list for PBXNativeTarget "Pods" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 2FE0C0C5F699CD86ED4EB5C28503F1F6 /* Debug */, + C63877BD2520268466B1D425137069A3 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = D41D8CD98F00B204E9800998ECF8427E /* Project object */; +} diff --git a/TalkinToTheNet/Pods/SBJson/LICENSE b/TalkinToTheNet/Pods/SBJson/LICENSE new file mode 100644 index 0000000..694b965 --- /dev/null +++ b/TalkinToTheNet/Pods/SBJson/LICENSE @@ -0,0 +1,24 @@ +Copyright (C) 2007-2014 Stig Brautaset. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. +* Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. +* Neither the name of the author nor the names of its contributors may be used + to endorse or promote products derived from this software without specific + prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/TalkinToTheNet/Pods/SBJson/README.md b/TalkinToTheNet/Pods/SBJson/README.md new file mode 100644 index 0000000..8266fa5 --- /dev/null +++ b/TalkinToTheNet/Pods/SBJson/README.md @@ -0,0 +1,60 @@ +JSON (JavaScript Object Notation) is a light-weight data interchange format +that's easy to read and write for humans and computers alike. This library +implements chunk-based JSON parsing and generation in Objective-C. + +[![Build Status](https://travis-ci.org/stig/json-framework.png?branch=master)](https://travis-ci.org/stig/json-framework) + +Features +======== + +SBJson's number one feature is chunk-based operation. Feed the parser one or +more chunks of UTF8-encoded data and it will call a block you provide with each +root-level document or array. Or, optionally, for each top-level entry in each +root-level array. See more in the [Version 4 API +docs](http://cocoadocs.org/docsets/SBJson/4.0.0/Classes/SBJson4Parser.html). + +Other features: + +* Configurable recursion limit. For safety SBJson defaults to a max nesting + level of 32 for all input. This can be configured if necessary. +* The writer can optionally sort dictionary keys so output is consistent across writes. +* The writer can optionally create human-readable (indented) output. + +API Documentation +================= + +Please see the [API Documentation](http://cocoadocs.org/docsets/SBJson) for more details. + +Installation +============ + +The preferred way to use SBJson is by using +[CocoaPods](http://cocoapods.org/?q=sbjson). In your Podfile use: + + pod 'SBJson', '~> 4.0.1' + +If you depend on a third-party library that requires an earlier version of +SBJson---or want to install both version 3 and 4 in the same app to do a gradual +transition---you can instead use: + + pod 'SBJson4', '~> 4.0.1' + +An alternative that I no longer recommend is to copy all the source files (the +contents of the `src/main/objc` folder) into your own Xcode project. + +Examples +======== + +* https://github.com/stig/ChunkedDelivery - a toy example showing how one can use `NSURLSessionDataDelegate` to do chunked delivery. +* https://github.com/stig/DisplayPretty - a very brief example using SBJson 4 to reflow JSON on OS X. + +Support +======= + +* Check [StackOverflow questions tagged with SBJson](http://stackoverflow.com/questions/tagged/sbjson) if you have questions about how to use the library. I eventually read all questions with this tag. +* Use the [issue tracker](http://github.com/stig/json-framework/issues) if you have found a bug. + +License +======= + +BSD. See LICENSE for details. diff --git a/TalkinToTheNet/Pods/SBJson/src/main/objc/SBJson4.h b/TalkinToTheNet/Pods/SBJson/src/main/objc/SBJson4.h new file mode 100644 index 0000000..f996ed4 --- /dev/null +++ b/TalkinToTheNet/Pods/SBJson/src/main/objc/SBJson4.h @@ -0,0 +1,35 @@ +/* + Copyright (C) 2009-2011 Stig Brautaset. All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + + * Neither the name of the author nor the names of its contributors may be used + to endorse or promote products derived from this software without specific + prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE + FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import "SBJson4Writer.h" +#import "SBJson4StreamParser.h" +#import "SBJson4Parser.h" +#import "SBJson4StreamWriter.h" +#import "SBJson4StreamTokeniser.h" + diff --git a/TalkinToTheNet/Pods/SBJson/src/main/objc/SBJson4Parser.h b/TalkinToTheNet/Pods/SBJson/src/main/objc/SBJson4Parser.h new file mode 100644 index 0000000..837b2b4 --- /dev/null +++ b/TalkinToTheNet/Pods/SBJson/src/main/objc/SBJson4Parser.h @@ -0,0 +1,248 @@ +/* + Copyright (c) 2010-2013, Stig Brautaset. + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + Neither the name of the the author nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS + IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A + PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import +#import "SBJson4StreamParser.h" + +/** + Block called when the parser has parsed an item. This could be once + for each root document parsed, or once for each unwrapped root array element. + + @param item contains the parsed item. + @param stop set to YES if you want the parser to stop + */ +typedef void (^SBJson4ValueBlock)(id item, BOOL* stop); + +/** + Block called if an error occurs. + @param error the error. + */ +typedef void (^SBJson4ErrorBlock)(NSError* error); + +/** + Block used to process parsed tokens as they are encountered. You can use this + to transform strings containing dates into NSDate, for example. + @param item the parsed token + @param path the JSON Path of the token + */ +typedef id (^SBJson4ProcessBlock)(id item, NSString* path); + + +/** + Parse one or more chunks of JSON data. + + Using this class directly you can reduce the apparent latency for each + download/parse cycle of documents over a slow connection. You can start + parsing *and return chunks of the parsed document* before the entire + document is downloaded. + + Using this class is also useful to parse huge documents on disk + bit by bit so you don't have to keep them all in memory. + + JSON is mapped to Objective-C types in the following way: + + - null -> NSNull + - string -> NSString + - array -> NSMutableArray + - object -> NSMutableDictionary + - true -> NSNumber's -numberWithBool:YES + - false -> NSNumber's -numberWithBool:NO + - number -> NSNumber + + Since Objective-C doesn't have a dedicated class for boolean values, + these turns into NSNumber instances. However, since these are + initialised with the -initWithBool: method they round-trip back to JSON + properly. In other words, they won't silently suddenly become 0 or 1; + they'll be represented as 'true' and 'false' again. + + Integers are parsed into either a `long long` or `unsigned long long` + type if they fit, else a `double` is used. All real & exponential numbers + are represented using a `double`. Previous versions of this library used + an NSDecimalNumber in some cases, but this is no longer the case. + + The default behaviour is that your passed-in block is only called once the + entire input is parsed. If you set supportManyDocuments to YES and your input + contains multiple (whitespace limited) JSON documents your block will be called + for each document: + + SBJson4ValueBlock block = ^(id v, BOOL *stop) { + BOOL isArray = [v isKindOfClass:[NSArray class]]; + NSLog(@"Found: %@", isArray ? @"Array" : @"Object"); + }; + + SBJson4ErrorBlock eh = ^(NSError* err) { + NSLog(@"OOPS: %@", err); + }; + + id parser = [SBJson4Parser multiRootParserWithBlock:block + errorHandler:eh]; + + // Note that this input contains multiple top-level JSON documents + id data = [@"[]{}" dataWithEncoding:NSUTF8StringEncoding]; + [parser parse:data]; + [parser parse:data]; + + The above example will print: + + - Found: Array + - Found: Object + - Found: Array + - Found: Object + + Often you won't have control over the input you're parsing, so can't make use + of this feature. But, all is not lost: if you are parsing a long array you can + get the same effect by setting rootArrayItems to YES: + + id parser = [SBJson4Parser unwrapRootArrayParserWithBlock:block + errorHandler:eh]; + + // Note that this input contains A SINGLE top-level document + id data = [@"[[],{},[],{}]" dataWithEncoding:NSUTF8StringEncoding]; + [parser parse:data]; + + @note Stream based parsing does mean that you lose some of the correctness + verification you would have with a parser that considered the entire input + before returning an answer. It is technically possible to have some parts + of a document returned *as if they were correct* but then encounter an error + in a later part of the document. You should keep this in mind when + considering whether it would suit your application. + + +*/ +@interface SBJson4Parser : NSObject + +/** + Create a JSON Parser. + + This can be used to create a parser that accepts only one document, or one that parses + many documents any + + @param block Called for each element. Set *stop to `YES` if you have seen + enough and would like to skip the rest of the elements. + + @param allowMultiRoot Indicate that you are expecting multiple whitespace-separated + JSON documents, similar to what Twitter uses. + + @param unwrapRootArray If set the parser will pretend an root array does not exist + and the enumerator block will be called once for each item in it. This option + does nothing if the the JSON has an object at its root. + + @param eh Called if the parser encounters an error. + + @see -unwrapRootArrayParserWithBlock:errorHandler: + @see -multiRootParserWithBlock:errorHandler: + @see -initWithBlock:processBlock:multiRoot:unwrapRootArray:maxDepth:errorHandler: + + */ ++ (id)parserWithBlock:(SBJson4ValueBlock)block + allowMultiRoot:(BOOL)allowMultiRoot + unwrapRootArray:(BOOL)unwrapRootArray + errorHandler:(SBJson4ErrorBlock)eh; + + +/** + Create a JSON Parser that parses multiple whitespace separated documents. + This is useful for something like Twitter's feed, which gives you one JSON + document per line. + + @param block Called for each element. Set *stop to `YES` if you have seen + enough and would like to skip the rest of the elements. + + @param eh Called if the parser encounters an error. + + @see +unwrapRootArrayParserWithBlock:errorHandler: + @see +parserWithBlock:allowMultiRoot:unwrapRootArray:errorHandler: + @see -initWithBlock:processBlock:multiRoot:unwrapRootArray:maxDepth:errorHandler: + */ ++ (id)multiRootParserWithBlock:(SBJson4ValueBlock)block + errorHandler:(SBJson4ErrorBlock)eh; + +/** + Create a JSON Parser that parses a huge array and calls for the value block for + each element in the outermost array. + + @param block Called for each element. Set *stop to `YES` if you have seen + enough and would like to skip the rest of the elements. + + @param eh Called if the parser encounters an error. + + @see +multiRootParserWithBlock:errorHandler: + @see +parserWithBlock:allowMultiRoot:unwrapRootArray:errorHandler: + @see -initWithBlock:processBlock:multiRoot:unwrapRootArray:maxDepth:errorHandler: + */ ++ (id)unwrapRootArrayParserWithBlock:(SBJson4ValueBlock)block + errorHandler:(SBJson4ErrorBlock)eh; + +/** + Create a JSON Parser. + + @param block Called for each element. Set *stop to `YES` if you have seen + enough and would like to skip the rest of the elements. + + @param processBlock A block that allows you to process individual values before being + returned. + + @param multiRoot Indicate that you are expecting multiple whitespace-separated + JSON documents, similar to what Twitter uses. + + @param unwrapRootArray If set the parser will pretend an root array does not exist + and the enumerator block will be called once for each item in it. This option + does nothing if the the JSON has an object at its root. + + @param maxDepth The max recursion depth of the parser. Defaults to 32. + + @param eh Called if the parser encounters an error. + + */ +- (id)initWithBlock:(SBJson4ValueBlock)block + processBlock:(SBJson4ProcessBlock)processBlock + multiRoot:(BOOL)multiRoot + unwrapRootArray:(BOOL)unwrapRootArray + maxDepth:(NSUInteger)maxDepth + errorHandler:(SBJson4ErrorBlock)eh; + +/** + Parse some JSON + + The JSON is assumed to be UTF8 encoded. This can be a full JSON document, or a part of one. + + @param data An NSData object containing the next chunk of JSON + + @return + - SBJson4ParserComplete if a full document was found + - SBJson4ParserWaitingForData if a partial document was found and more data is required to complete it + - SBJson4ParserError if an error occurred. + + */ +- (SBJson4ParserStatus)parse:(NSData*)data; + +@end diff --git a/TalkinToTheNet/Pods/SBJson/src/main/objc/SBJson4Parser.m b/TalkinToTheNet/Pods/SBJson/src/main/objc/SBJson4Parser.m new file mode 100644 index 0000000..32fb81d --- /dev/null +++ b/TalkinToTheNet/Pods/SBJson/src/main/objc/SBJson4Parser.m @@ -0,0 +1,287 @@ +/* + Copyright (c) 2010-2013, Stig Brautaset. + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + Neither the name of the the author nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS + IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A + PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#if !__has_feature(objc_arc) +#error "This source file must be compiled with ARC enabled!" +#endif + +#import "SBJson4Parser.h" + +@interface SBJson4Parser () + +- (void)pop; + +@end + +typedef enum { + SBJson4ChunkNone, + SBJson4ChunkArray, + SBJson4ChunkObject, +} SBJson4ChunkType; + +@implementation SBJson4Parser { + SBJson4StreamParser *_parser; + NSUInteger depth; + NSMutableArray *array; + NSMutableDictionary *dict; + NSMutableArray *keyStack; + NSMutableArray *stack; + NSMutableArray *path; + SBJson4ProcessBlock processBlock; + SBJson4ErrorBlock errorHandler; + SBJson4ValueBlock valueBlock; + SBJson4ChunkType currentType; + BOOL supportManyDocuments; + BOOL supportPartialDocuments; + NSUInteger _maxDepth; +} + +#pragma mark Housekeeping + +- (id)init { + @throw @"Not Implemented"; +} + ++ (id)multiRootParserWithBlock:(SBJson4ValueBlock)block errorHandler:(SBJson4ErrorBlock)eh { + return [self parserWithBlock:block + allowMultiRoot:YES + unwrapRootArray:NO + errorHandler:eh]; +} + ++ (id)unwrapRootArrayParserWithBlock:(SBJson4ValueBlock)block errorHandler:(SBJson4ErrorBlock)eh { + return [self parserWithBlock:block + allowMultiRoot:NO + unwrapRootArray:YES + errorHandler:eh]; +} + ++ (id)parserWithBlock:(SBJson4ValueBlock)block + allowMultiRoot:(BOOL)allowMultiRoot + unwrapRootArray:(BOOL)unwrapRootArray + errorHandler:(SBJson4ErrorBlock)eh { + + return [[self alloc] initWithBlock:block + processBlock:nil + multiRoot:allowMultiRoot + unwrapRootArray:unwrapRootArray + maxDepth:32 + errorHandler:eh]; +} + +- (id)initWithBlock:(SBJson4ValueBlock)block + processBlock:(SBJson4ProcessBlock)initialProcessBlock + multiRoot:(BOOL)multiRoot + unwrapRootArray:(BOOL)unwrapRootArray + maxDepth:(NSUInteger)maxDepth + errorHandler:(SBJson4ErrorBlock)eh { + + self = [super init]; + if (self) { + _parser = [[SBJson4StreamParser alloc] init]; + _parser.delegate = self; + + supportManyDocuments = multiRoot; + supportPartialDocuments = unwrapRootArray; + + valueBlock = block; + keyStack = [[NSMutableArray alloc] initWithCapacity:32]; + stack = [[NSMutableArray alloc] initWithCapacity:32]; + if (initialProcessBlock) + path = [[NSMutableArray alloc] initWithCapacity:32]; + processBlock = initialProcessBlock; + errorHandler = eh ? eh : ^(NSError*err) { NSLog(@"%@", err); }; + currentType = SBJson4ChunkNone; + _maxDepth = maxDepth; + } + return self; +} + + +#pragma mark Private methods + +- (void)pop { + [stack removeLastObject]; + array = nil; + dict = nil; + currentType = SBJson4ChunkNone; + + id value = [stack lastObject]; + + if ([value isKindOfClass:[NSArray class]]) { + array = value; + currentType = SBJson4ChunkArray; + } else if ([value isKindOfClass:[NSDictionary class]]) { + dict = value; + currentType = SBJson4ChunkObject; + } +} + +- (void)parserFound:(id)obj isValue:(BOOL)isValue { + NSParameterAssert(obj); + + if(processBlock&&path) { + if(isValue) { + obj = processBlock(obj,[NSString stringWithFormat:@"%@.%@",[self pathString],[keyStack lastObject]]); + } + else { + [path removeLastObject]; + } + } + + switch (currentType) { + case SBJson4ChunkArray: + [array addObject:obj]; + break; + + case SBJson4ChunkObject: + NSParameterAssert(keyStack.count); + [dict setObject:obj forKey:[keyStack lastObject]]; + [keyStack removeLastObject]; + break; + + case SBJson4ChunkNone: { + __block BOOL stop = NO; + valueBlock(obj, &stop); + if (stop) [_parser stop]; + } + break; + + default: + break; + } +} + + +#pragma mark Delegate methods + +- (void)parserFoundObjectStart { + ++depth; + if (depth > _maxDepth) + [self maxDepthError]; + + if (path) + [self addToPath]; + dict = [NSMutableDictionary new]; + [stack addObject:dict]; + currentType = SBJson4ChunkObject; +} + +- (void)parserFoundObjectKey:(NSString *)key_ { + [keyStack addObject:key_]; +} + +- (void)parserFoundObjectEnd { + depth--; + id value = dict; + [self pop]; + [self parserFound:value isValue:NO ]; +} + +- (void)parserFoundArrayStart { + depth++; + if (depth > _maxDepth) + [self maxDepthError]; + + if (depth > 1 || !supportPartialDocuments) { + if(path) + [self addToPath]; + array = [NSMutableArray new]; + [stack addObject:array]; + currentType = SBJson4ChunkArray; + } +} + +- (void)parserFoundArrayEnd { + depth--; + if (depth > 1 || !supportPartialDocuments) { + id value = array; + [self pop]; + [self parserFound:value isValue:NO ]; + } +} + +- (void)maxDepthError { + id ui = @{ NSLocalizedDescriptionKey: [NSString stringWithFormat:@"Input depth exceeds max depth of %lu", (unsigned long)_maxDepth]}; + errorHandler([NSError errorWithDomain:@"org.sbjson.parser" code:3 userInfo:ui]); + [_parser stop]; +} + +- (void)parserFoundBoolean:(BOOL)x { + [self parserFound:[NSNumber numberWithBool:x] isValue:YES ]; +} + +- (void)parserFoundNull { + [self parserFound:[NSNull null] isValue:YES ]; +} + +- (void)parserFoundNumber:(NSNumber *)num { + [self parserFound:num isValue:YES ]; +} + +- (void)parserFoundString:(NSString *)string { + [self parserFound:string isValue:YES ]; +} + +- (void)parserFoundError:(NSError *)err { + errorHandler(err); +} + +- (void)addToPath { + if([path count]==0) + [path addObject:@"$"]; + else if([[stack lastObject] isKindOfClass:[NSArray class]]) + [path addObject:@([[stack lastObject] count])]; + else + [path addObject:[keyStack lastObject]]; +} + +- (NSString *)pathString { + NSMutableString *pathString = [NSMutableString stringWithString:@"$"]; + for(NSUInteger i=1;i<[path count];i++) { + if([[path objectAtIndex:i] isKindOfClass:[NSNumber class]]) + [pathString appendString:[NSString stringWithFormat:@"[%@]",[path objectAtIndex:i]]]; + else + [pathString appendString:[NSString stringWithFormat:@".%@",[path objectAtIndex:i]]]; + } + return pathString; +} + +- (BOOL)parserShouldSupportManyDocuments { + return supportManyDocuments; +} + +- (SBJson4ParserStatus)parse:(NSData *)data { + return [_parser parse:data]; +} + +@end diff --git a/TalkinToTheNet/Pods/SBJson/src/main/objc/SBJson4StreamParser.h b/TalkinToTheNet/Pods/SBJson/src/main/objc/SBJson4StreamParser.h new file mode 100644 index 0000000..2fa9f3b --- /dev/null +++ b/TalkinToTheNet/Pods/SBJson/src/main/objc/SBJson4StreamParser.h @@ -0,0 +1,132 @@ +/* + Copyright (c) 2010-2013, Stig Brautaset. + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + Neither the name of the the author nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS + IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A + PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import + +@class SBJson4StreamParser; +@class SBJson4StreamParserState; + +typedef enum { + SBJson4ParserComplete, + SBJson4ParserStopped, + SBJson4ParserWaitingForData, + SBJson4ParserError, +} SBJson4ParserStatus; + + +/** + Delegate for interacting directly with the low-level parser + + You will most likely find it much more convenient to use the SBJson4Parser instead. + */ +@protocol SBJson4StreamParserDelegate < NSObject > + +/// Called when object start is found +- (void)parserFoundObjectStart; + +/// Called when object key is found +- (void)parserFoundObjectKey:(NSString *)key; + +/// Called when object end is found +- (void)parserFoundObjectEnd; + +/// Called when array start is found +- (void)parserFoundArrayStart; + +/// Called when array end is found +- (void)parserFoundArrayEnd; + +/// Called when a boolean value is found +- (void)parserFoundBoolean:(BOOL)x; + +/// Called when a null value is found +- (void)parserFoundNull; + +/// Called when a number is found +- (void)parserFoundNumber:(NSNumber *)num; + +/// Called when a string is found +- (void)parserFoundString:(NSString *)string; + +/// Called when an error occurs +- (void)parserFoundError:(NSError *)err; + +@optional + +/// Called to determine whether to allow multiple whitespace-separated documents +- (BOOL)parserShouldSupportManyDocuments; + +@end + +/** + Low-level Stream parser + + You most likely want to use the SBJson4Parser instead, but if you + really need low-level access to tokens one-by-one you can use this class. + */ +@interface SBJson4StreamParser : NSObject + +@property (nonatomic, weak) SBJson4StreamParserState *state; // Private +@property (nonatomic, readonly, strong) NSMutableArray *stateStack; // Private + +/** + Delegate to receive messages + + The object set here receives a series of messages as the parser breaks down the JSON stream + into valid tokens. + + Usually this should be an instance of SBJson4Parser, but you can + substitute your own implementation of the SBJson4StreamParserDelegate protocol if you need to. + */ +@property (nonatomic, weak) id delegate; + +/** + Parse some JSON + + The JSON is assumed to be UTF8 encoded. This can be a full JSON document, or a part of one. + + @param data An NSData object containing the next chunk of JSON + + @return + - SBJson4ParserComplete if a full document was found + - SBJson4ParserWaitingForData if a partial document was found and more data is required to complete it + - SBJson4ParserError if an error occurred. + + */ +- (SBJson4ParserStatus)parse:(NSData*)data; + +/** + Call this to cause parsing to stop. + */ +- (void)stop; + +@end diff --git a/TalkinToTheNet/Pods/SBJson/src/main/objc/SBJson4StreamParser.m b/TalkinToTheNet/Pods/SBJson/src/main/objc/SBJson4StreamParser.m new file mode 100644 index 0000000..2ea355f --- /dev/null +++ b/TalkinToTheNet/Pods/SBJson/src/main/objc/SBJson4StreamParser.m @@ -0,0 +1,315 @@ +/* + Copyright (c) 2010, Stig Brautaset. + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + Neither the name of the the author nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS + IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A + PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#if !__has_feature(objc_arc) +#error "This source file must be compiled with ARC enabled!" +#endif + +#import "SBJson4StreamParser.h" +#import "SBJson4StreamTokeniser.h" +#import "SBJson4StreamParserState.h" + +#define SBStringIsSurrogateHighCharacter(character) ((character >= 0xD800UL) && (character <= 0xDBFFUL)) + +@implementation SBJson4StreamParser { + SBJson4StreamTokeniser *tokeniser; + BOOL stopped; +} + +#pragma mark Housekeeping + +- (id)init { + self = [super init]; + if (self) { + _stateStack = [[NSMutableArray alloc] initWithCapacity:32]; + _state = [SBJson4StreamParserStateStart sharedInstance]; + tokeniser = [[SBJson4StreamTokeniser alloc] init]; + } + return self; +} + + +#pragma mark Methods + +- (NSString*)tokenName:(sbjson4_token_t)token { + switch (token) { + case sbjson4_token_array_open: + return @"start of array"; + + case sbjson4_token_array_close: + return @"end of array"; + + case sbjson4_token_integer: + case sbjson4_token_real: + return @"number"; + + case sbjson4_token_string: + case sbjson4_token_encoded: + return @"string"; + + case sbjson4_token_bool: + return @"boolean"; + + case sbjson4_token_null: + return @"null"; + + case sbjson4_token_entry_sep: + return @"key-value separator"; + + case sbjson4_token_value_sep: + return @"value separator"; + + case sbjson4_token_object_open: + return @"start of object"; + + case sbjson4_token_object_close: + return @"end of object"; + + case sbjson4_token_eof: + case sbjson4_token_error: + break; + } + NSAssert(NO, @"Should not get here"); + return @""; +} + +- (void)handleObjectStart { + [_delegate parserFoundObjectStart]; + [_stateStack addObject:_state]; + _state = [SBJson4StreamParserStateObjectStart sharedInstance]; +} + +- (void)handleObjectEnd: (sbjson4_token_t) tok { + _state = [_stateStack lastObject]; + [_stateStack removeLastObject]; + [_state parser:self shouldTransitionTo:tok]; + [_delegate parserFoundObjectEnd]; +} + +- (void)handleArrayStart { + [_delegate parserFoundArrayStart]; + [_stateStack addObject:_state]; + _state = [SBJson4StreamParserStateArrayStart sharedInstance]; +} + +- (void)handleArrayEnd: (sbjson4_token_t) tok { + _state = [_stateStack lastObject]; + [_stateStack removeLastObject]; + [_state parser:self shouldTransitionTo:tok]; + [_delegate parserFoundArrayEnd]; +} + +- (void) handleTokenNotExpectedHere: (sbjson4_token_t) tok { + NSString *tokenName = [self tokenName:tok]; + NSString *stateName = [_state name]; + + _state = [SBJson4StreamParserStateError sharedInstance]; + id ui = @{ NSLocalizedDescriptionKey : [NSString stringWithFormat:@"Token '%@' not expected %@", tokenName, stateName]}; + [_delegate parserFoundError:[NSError errorWithDomain:@"org.sbjson.parser" code:2 userInfo:ui]]; +} + +- (SBJson4ParserStatus)parse:(NSData *)data_ { + @autoreleasepool { + [tokeniser appendData:data_]; + + for (;;) { + + if (stopped) + return SBJson4ParserStopped; + + if ([_state isError]) + return SBJson4ParserError; + + char *token; + NSUInteger token_len; + sbjson4_token_t tok = [tokeniser getToken:&token length:&token_len]; + + switch (tok) { + case sbjson4_token_eof: + return [_state parserShouldReturn:self]; + + case sbjson4_token_error: + _state = [SBJson4StreamParserStateError sharedInstance]; + [_delegate parserFoundError:[NSError errorWithDomain:@"org.sbjson.parser" code:3 + userInfo:@{NSLocalizedDescriptionKey : tokeniser.error}]]; + return SBJson4ParserError; + + default: + + if (![_state parser:self shouldAcceptToken:tok]) { + [self handleTokenNotExpectedHere: tok]; + return SBJson4ParserError; + } + + switch (tok) { + case sbjson4_token_object_open: + [self handleObjectStart]; + break; + + case sbjson4_token_object_close: + [self handleObjectEnd: tok]; + break; + + case sbjson4_token_array_open: + [self handleArrayStart]; + break; + + case sbjson4_token_array_close: + [self handleArrayEnd: tok]; + break; + + case sbjson4_token_value_sep: + case sbjson4_token_entry_sep: + [_state parser:self shouldTransitionTo:tok]; + break; + + case sbjson4_token_bool: + [_delegate parserFoundBoolean:token[0] == 't']; + [_state parser:self shouldTransitionTo:tok]; + break; + + + case sbjson4_token_null: + [_delegate parserFoundNull]; + [_state parser:self shouldTransitionTo:tok]; + break; + + case sbjson4_token_integer: { + const int UNSIGNED_LONG_LONG_MAX_DIGITS = 20; + if (token_len <= UNSIGNED_LONG_LONG_MAX_DIGITS) { + if (*token == '-') + [_delegate parserFoundNumber:@(strtoll(token, NULL, 10))]; + else + [_delegate parserFoundNumber:@(strtoull(token, NULL, 10))]; + + [_state parser:self shouldTransitionTo:tok]; + break; + } + } + // FALL THROUGH + + case sbjson4_token_real: { + [_delegate parserFoundNumber:@(strtod(token, NULL))]; + [_state parser:self shouldTransitionTo:tok]; + break; + } + + case sbjson4_token_string: { + NSString *string = [[NSString alloc] initWithBytes:token length:token_len encoding:NSUTF8StringEncoding]; + if ([_state needKey]) + [_delegate parserFoundObjectKey:string]; + else + [_delegate parserFoundString:string]; + [_state parser:self shouldTransitionTo:tok]; + break; + } + + case sbjson4_token_encoded: { + NSString *string = [self decodeStringToken:token length:token_len]; + if ([_state needKey]) + [_delegate parserFoundObjectKey:string]; + else + [_delegate parserFoundString:string]; + [_state parser:self shouldTransitionTo:tok]; + break; + } + + default: + break; + } + break; + } + } + return SBJson4ParserComplete; + } +} + +- (unichar)decodeHexQuad:(char *)quad { + unichar ch = 0; + for (NSUInteger i = 0; i < 4; i++) { + int c = quad[i]; + ch *= 16; + switch (c) { + case '0' ... '9': ch += c - '0'; break; + case 'a' ... 'f': ch += 10 + c - 'a'; break; + case 'A' ... 'F': ch += 10 + c - 'A'; break; + default: @throw @"FUT FUT FUT"; + } + } + return ch; +} + +- (NSString*)decodeStringToken:(char*)bytes length:(NSUInteger)len { + NSMutableData *buf = [NSMutableData dataWithCapacity:len]; + for (NSUInteger i = 0; i < len;) { + switch ((unsigned char)bytes[i]) { + case '\\': { + switch ((unsigned char)bytes[++i]) { + case '"': [buf appendBytes:"\"" length:1]; i++; break; + case '/': [buf appendBytes:"/" length:1]; i++; break; + case '\\': [buf appendBytes:"\\" length:1]; i++; break; + case 'b': [buf appendBytes:"\b" length:1]; i++; break; + case 'f': [buf appendBytes:"\f" length:1]; i++; break; + case 'n': [buf appendBytes:"\n" length:1]; i++; break; + case 'r': [buf appendBytes:"\r" length:1]; i++; break; + case 't': [buf appendBytes:"\t" length:1]; i++; break; + case 'u': { + unichar hi = [self decodeHexQuad:bytes + i + 1]; + i += 5; + if (SBStringIsSurrogateHighCharacter(hi)) { + // Skip past \u that we know is there.. + unichar lo = [self decodeHexQuad:bytes + i + 2]; + i += 6; + [buf appendData:[[NSString stringWithFormat:@"%C%C", hi, lo] dataUsingEncoding:NSUTF8StringEncoding]]; + } else { + [buf appendData:[[NSString stringWithFormat:@"%C", hi] dataUsingEncoding:NSUTF8StringEncoding]]; + } + break; + } + default: @throw @"FUT FUT FUT"; + } + break; + } + default: + [buf appendBytes:bytes + i length:1]; + i++; + break; + } + } + return [[NSString alloc] initWithData:buf encoding:NSUTF8StringEncoding]; +} + +- (void)stop { + stopped = YES; +} + +@end diff --git a/TalkinToTheNet/Pods/SBJson/src/main/objc/SBJson4StreamParserState.h b/TalkinToTheNet/Pods/SBJson/src/main/objc/SBJson4StreamParserState.h new file mode 100644 index 0000000..d602fcd --- /dev/null +++ b/TalkinToTheNet/Pods/SBJson/src/main/objc/SBJson4StreamParserState.h @@ -0,0 +1,82 @@ +/* + Copyright (c) 2010, Stig Brautaset. + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + Neither the name of the the author nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS + IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A + PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import + +#import "SBJson4StreamTokeniser.h" +#import "SBJson4StreamParser.h" + +@interface SBJson4StreamParserState : NSObject ++ (id)sharedInstance; + +- (BOOL)parser:(SBJson4StreamParser *)parser shouldAcceptToken:(sbjson4_token_t)token; +- (SBJson4ParserStatus)parserShouldReturn:(SBJson4StreamParser *)parser; +- (void)parser:(SBJson4StreamParser *)parser shouldTransitionTo:(sbjson4_token_t)tok; +- (BOOL)needKey; +- (BOOL)isError; + +- (NSString*)name; + +@end + +@interface SBJson4StreamParserStateStart : SBJson4StreamParserState +@end + +@interface SBJson4StreamParserStateComplete : SBJson4StreamParserState +@end + +@interface SBJson4StreamParserStateError : SBJson4StreamParserState +@end + +@interface SBJson4StreamParserStateObjectStart : SBJson4StreamParserState +@end + +@interface SBJson4StreamParserStateObjectGotKey : SBJson4StreamParserState +@end + +@interface SBJson4StreamParserStateObjectSeparator : SBJson4StreamParserState +@end + +@interface SBJson4StreamParserStateObjectGotValue : SBJson4StreamParserState +@end + +@interface SBJson4StreamParserStateObjectNeedKey : SBJson4StreamParserState +@end + +@interface SBJson4StreamParserStateArrayStart : SBJson4StreamParserState +@end + +@interface SBJson4StreamParserStateArrayGotValue : SBJson4StreamParserState +@end + +@interface SBJson4StreamParserStateArrayNeedValue : SBJson4StreamParserState +@end diff --git a/TalkinToTheNet/Pods/SBJson/src/main/objc/SBJson4StreamParserState.m b/TalkinToTheNet/Pods/SBJson/src/main/objc/SBJson4StreamParserState.m new file mode 100644 index 0000000..9435bf1 --- /dev/null +++ b/TalkinToTheNet/Pods/SBJson/src/main/objc/SBJson4StreamParserState.m @@ -0,0 +1,355 @@ +/* + Copyright (c) 2010-2013, Stig Brautaset. + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + Neither the name of the the author nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS + IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A + PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#if !__has_feature(objc_arc) +#error "This source file must be compiled with ARC enabled!" +#endif + +#import "SBJson4StreamParserState.h" + +#define SINGLETON \ ++ (id)sharedInstance { \ + static id state = nil; \ + if (!state) { \ + @synchronized(self) { \ + if (!state) state = [[self alloc] init]; \ + } \ + } \ + return state; \ +} + +@implementation SBJson4StreamParserState + ++ (id)sharedInstance { return nil; } + +- (BOOL)parser:(SBJson4StreamParser *)parser shouldAcceptToken:(sbjson4_token_t)token { + return NO; +} + +- (SBJson4ParserStatus)parserShouldReturn:(SBJson4StreamParser *)parser { + return SBJson4ParserWaitingForData; +} + +- (void)parser:(SBJson4StreamParser *)parser shouldTransitionTo:(sbjson4_token_t)tok {} + +- (BOOL)needKey { + return NO; +} + +- (NSString*)name { + return @""; +} + +- (BOOL)isError { + return NO; +} + +@end + +#pragma mark - + +@implementation SBJson4StreamParserStateStart + +SINGLETON + +- (BOOL)parser:(SBJson4StreamParser *)parser shouldAcceptToken:(sbjson4_token_t)token { + return token == sbjson4_token_array_open || token == sbjson4_token_object_open; +} + +- (void)parser:(SBJson4StreamParser *)parser shouldTransitionTo:(sbjson4_token_t)tok { + + SBJson4StreamParserState *state = nil; + switch (tok) { + case sbjson4_token_array_open: + state = [SBJson4StreamParserStateArrayStart sharedInstance]; + break; + + case sbjson4_token_object_open: + state = [SBJson4StreamParserStateObjectStart sharedInstance]; + break; + + case sbjson4_token_array_close: + case sbjson4_token_object_close: + if ([parser.delegate respondsToSelector:@selector(parserShouldSupportManyDocuments)] && [parser.delegate parserShouldSupportManyDocuments]) + state = parser.state; + else + state = [SBJson4StreamParserStateComplete sharedInstance]; + break; + + case sbjson4_token_eof: + return; + + default: + state = [SBJson4StreamParserStateError sharedInstance]; + break; + } + + + parser.state = state; +} + +- (NSString*)name { return @"before outer-most array or object"; } + +@end + +#pragma mark - + +@implementation SBJson4StreamParserStateComplete + +SINGLETON + +- (NSString*)name { return @"after outer-most array or object"; } + +- (SBJson4ParserStatus)parserShouldReturn:(SBJson4StreamParser *)parser { + return SBJson4ParserComplete; +} + +@end + +#pragma mark - + +@implementation SBJson4StreamParserStateError + +SINGLETON + +- (NSString*)name { return @"in error"; } + +- (SBJson4ParserStatus)parserShouldReturn:(SBJson4StreamParser *)parser { + return SBJson4ParserError; +} + +- (BOOL)isError { + return YES; +} + +@end + +#pragma mark - + +@implementation SBJson4StreamParserStateObjectStart + +SINGLETON + +- (NSString*)name { return @"at beginning of object"; } + +- (BOOL)parser:(SBJson4StreamParser *)parser shouldAcceptToken:(sbjson4_token_t)token { + switch (token) { + case sbjson4_token_object_close: + case sbjson4_token_string: + case sbjson4_token_encoded: + return YES; + default: + return NO; + } +} + +- (void)parser:(SBJson4StreamParser *)parser shouldTransitionTo:(sbjson4_token_t)tok { + parser.state = [SBJson4StreamParserStateObjectGotKey sharedInstance]; +} + +- (BOOL)needKey { + return YES; +} + +@end + +#pragma mark - + +@implementation SBJson4StreamParserStateObjectGotKey + +SINGLETON + +- (NSString*)name { return @"after object key"; } + +- (BOOL)parser:(SBJson4StreamParser *)parser shouldAcceptToken:(sbjson4_token_t)token { + return token == sbjson4_token_entry_sep; +} + +- (void)parser:(SBJson4StreamParser *)parser shouldTransitionTo:(sbjson4_token_t)tok { + parser.state = [SBJson4StreamParserStateObjectSeparator sharedInstance]; +} + +@end + +#pragma mark - + +@implementation SBJson4StreamParserStateObjectSeparator + +SINGLETON + +- (NSString*)name { return @"as object value"; } + +- (BOOL)parser:(SBJson4StreamParser *)parser shouldAcceptToken:(sbjson4_token_t)token { + switch (token) { + case sbjson4_token_object_open: + case sbjson4_token_array_open: + case sbjson4_token_bool: + case sbjson4_token_null: + case sbjson4_token_integer: + case sbjson4_token_real: + case sbjson4_token_string: + case sbjson4_token_encoded: + return YES; + + default: + return NO; + } +} + +- (void)parser:(SBJson4StreamParser *)parser shouldTransitionTo:(sbjson4_token_t)tok { + parser.state = [SBJson4StreamParserStateObjectGotValue sharedInstance]; +} + +@end + +#pragma mark - + +@implementation SBJson4StreamParserStateObjectGotValue + +SINGLETON + +- (NSString*)name { return @"after object value"; } + +- (BOOL)parser:(SBJson4StreamParser *)parser shouldAcceptToken:(sbjson4_token_t)token { + switch (token) { + case sbjson4_token_object_close: + case sbjson4_token_value_sep: + return YES; + + default: + return NO; + } +} + +- (void)parser:(SBJson4StreamParser *)parser shouldTransitionTo:(sbjson4_token_t)tok { + parser.state = [SBJson4StreamParserStateObjectNeedKey sharedInstance]; +} + + +@end + +#pragma mark - + +@implementation SBJson4StreamParserStateObjectNeedKey + +SINGLETON + +- (NSString*)name { return @"in place of object key"; } + +- (BOOL)parser:(SBJson4StreamParser *)parser shouldAcceptToken:(sbjson4_token_t)token { + return sbjson4_token_string == token || sbjson4_token_encoded == token; +} + +- (void)parser:(SBJson4StreamParser *)parser shouldTransitionTo:(sbjson4_token_t)tok { + parser.state = [SBJson4StreamParserStateObjectGotKey sharedInstance]; +} + +- (BOOL)needKey { + return YES; +} + +@end + +#pragma mark - + +@implementation SBJson4StreamParserStateArrayStart + +SINGLETON + +- (NSString*)name { return @"at array start"; } + +- (BOOL)parser:(SBJson4StreamParser *)parser shouldAcceptToken:(sbjson4_token_t)token { + switch (token) { + case sbjson4_token_object_close: + case sbjson4_token_entry_sep: + case sbjson4_token_value_sep: + return NO; + + default: + return YES; + } +} + +- (void)parser:(SBJson4StreamParser *)parser shouldTransitionTo:(sbjson4_token_t)tok { + parser.state = [SBJson4StreamParserStateArrayGotValue sharedInstance]; +} + +@end + +#pragma mark - + +@implementation SBJson4StreamParserStateArrayGotValue + +SINGLETON + +- (NSString*)name { return @"after array value"; } + + +- (BOOL)parser:(SBJson4StreamParser *)parser shouldAcceptToken:(sbjson4_token_t)token { + return token == sbjson4_token_array_close || token == sbjson4_token_value_sep; +} + +- (void)parser:(SBJson4StreamParser *)parser shouldTransitionTo:(sbjson4_token_t)tok { + if (tok == sbjson4_token_value_sep) + parser.state = [SBJson4StreamParserStateArrayNeedValue sharedInstance]; +} + +@end + +#pragma mark - + +@implementation SBJson4StreamParserStateArrayNeedValue + +SINGLETON + +- (NSString*)name { return @"as array value"; } + + +- (BOOL)parser:(SBJson4StreamParser *)parser shouldAcceptToken:(sbjson4_token_t)token { + switch (token) { + case sbjson4_token_array_close: + case sbjson4_token_entry_sep: + case sbjson4_token_object_close: + case sbjson4_token_value_sep: + return NO; + + default: + return YES; + } +} + +- (void)parser:(SBJson4StreamParser *)parser shouldTransitionTo:(sbjson4_token_t)tok { + parser.state = [SBJson4StreamParserStateArrayGotValue sharedInstance]; +} + +@end + diff --git a/TalkinToTheNet/Pods/SBJson/src/main/objc/SBJson4StreamTokeniser.h b/TalkinToTheNet/Pods/SBJson/src/main/objc/SBJson4StreamTokeniser.h new file mode 100644 index 0000000..518b0f2 --- /dev/null +++ b/TalkinToTheNet/Pods/SBJson/src/main/objc/SBJson4StreamTokeniser.h @@ -0,0 +1,40 @@ +// +// Created by SuperPappi on 09/01/2013. +// +// To change the template use AppCode | Preferences | File Templates. +// + +#import + +typedef enum { + sbjson4_token_error = -1, + sbjson4_token_eof, + + sbjson4_token_array_open, + sbjson4_token_array_close, + sbjson4_token_value_sep, + + sbjson4_token_object_open, + sbjson4_token_object_close, + sbjson4_token_entry_sep, + + sbjson4_token_bool, + sbjson4_token_null, + + sbjson4_token_integer, + sbjson4_token_real, + + sbjson4_token_string, + sbjson4_token_encoded, +} sbjson4_token_t; + + +@interface SBJson4StreamTokeniser : NSObject + +@property (nonatomic, readonly, copy) NSString *error; + +- (void)appendData:(NSData*)data_; +- (sbjson4_token_t)getToken:(char**)tok length:(NSUInteger*)len; + +@end + diff --git a/TalkinToTheNet/Pods/SBJson/src/main/objc/SBJson4StreamTokeniser.m b/TalkinToTheNet/Pods/SBJson/src/main/objc/SBJson4StreamTokeniser.m new file mode 100644 index 0000000..756bdd9 --- /dev/null +++ b/TalkinToTheNet/Pods/SBJson/src/main/objc/SBJson4StreamTokeniser.m @@ -0,0 +1,395 @@ +// +// Created by SuperPappi on 09/01/2013. +// +// To change the template use AppCode | Preferences | File Templates. +// + + +#import "SBJson4StreamTokeniser.h" + +#define SBStringIsIllegalSurrogateHighCharacter(character) (((character) >= 0xD800UL) && ((character) <= 0xDFFFUL)) +#define SBStringIsSurrogateLowCharacter(character) ((character >= 0xDC00UL) && (character <= 0xDFFFUL)) +#define SBStringIsSurrogateHighCharacter(character) ((character >= 0xD800UL) && (character <= 0xDBFFUL)) + +@implementation SBJson4StreamTokeniser { + NSMutableData *data; + const char *bytes; + NSUInteger index; + NSUInteger offset; +} + +- (void)setError:(NSString *)error { + _error = [NSString stringWithFormat:@"%@ at index %lu", error, (unsigned long)(offset + index)]; +} + +- (void)appendData:(NSData *)data_ { + if (!data) { + data = [data_ mutableCopy]; + + } else if (index) { + // Discard data we've already parsed + [data replaceBytesInRange:NSMakeRange(0, index) withBytes:"" length:0]; + [data appendData:data_]; + + // Add to the offset for reporting + offset += index; + + // Reset index to point to current position + index = 0u; + + } + else { + [data appendData:data_]; + } + + bytes = [data bytes]; +} + +- (void)skipWhitespace { + while (index < data.length) { + switch (bytes[index]) { + case ' ': + case '\t': + case '\r': + case '\n': + index++; + break; + default: + return; + } + } +} + +- (BOOL)getUnichar:(unichar *)ch { + if ([self haveRemainingCharacters:1]) { + *ch = (unichar) bytes[index]; + return YES; + } + return NO; +} + +- (BOOL)haveOneMoreCharacter { + return [self haveRemainingCharacters:1]; +} + +- (BOOL)haveRemainingCharacters:(NSUInteger)length { + return data.length - index >= length; +} + +- (sbjson4_token_t)match:(char *)str retval:(sbjson4_token_t)tok token:(char **)token length:(NSUInteger *)length { + NSUInteger len = strlen(str); + if ([self haveRemainingCharacters:len]) { + if (!memcmp(bytes + index, str, len)) { + *token = str; + *length = len; + index += len; + return tok; + } + [self setError: [NSString stringWithFormat:@"Expected '%s' after initial '%.1s'", str, str]]; + return sbjson4_token_error; + } + + return sbjson4_token_eof; +} + +- (BOOL)decodeHexQuad:(unichar*)quad { + unichar tmp = 0; + + for (int i = 0; i < 4; i++, index++) { + unichar c = (unichar)bytes[index]; + tmp *= 16; + switch (c) { + case '0' ... '9': + tmp += c - '0'; + break; + + case 'a' ... 'f': + tmp += 10 + c - 'a'; + break; + + case 'A' ... 'F': + tmp += 10 + c - 'A'; + break; + + default: + return NO; + } + } + *quad = tmp; + return YES; +} + +- (sbjson4_token_t)getStringToken:(char **)token length:(NSUInteger *)length { + + // Skip initial " + index++; + + NSUInteger string_start = index; + sbjson4_token_t tok = sbjson4_token_string; + + for (;;) { + if (![self haveOneMoreCharacter]) + return sbjson4_token_eof; + + switch (bytes[index]) { + case 0 ... 0x1F: + [self setError:[NSString stringWithFormat:@"Unescaped control character [0x%0.2X] in string", bytes[index]]]; + return sbjson4_token_error; + + case '"': + *token = (char *)(bytes + string_start); + *length = index - string_start; + index++; + return tok; + + case '\\': + tok = sbjson4_token_encoded; + index++; + if (![self haveOneMoreCharacter]) + return sbjson4_token_eof; + + if (bytes[index] == 'u') { + index++; + if (![self haveRemainingCharacters:4]) + return sbjson4_token_eof; + + unichar hi; + if (![self decodeHexQuad:&hi]) { + [self setError:@"Invalid hex quad"]; + return sbjson4_token_error; + } + + if (SBStringIsSurrogateHighCharacter(hi)) { + if (![self haveRemainingCharacters:6]) + return sbjson4_token_eof; + + unichar lo; + if (bytes[index++] != '\\' || bytes[index++] != 'u' || ![self decodeHexQuad:&lo]) { + [self setError:@"Missing low character in surrogate pair"]; + return sbjson4_token_error; + } + + if (!SBStringIsSurrogateLowCharacter(lo)) { + [self setError:@"Invalid low character in surrogate pair"]; + return sbjson4_token_error; + } + + } else if (SBStringIsIllegalSurrogateHighCharacter(hi)) { + [self setError:@"Invalid high character in surrogate pair"]; + return sbjson4_token_error; + + } + + + } else { + switch (bytes[index]) { + case '\\': + case '/': + case '"': + case 'b': + case 'n': + case 'r': + case 't': + case 'f': + index++; + break; + + default: + [self setError:[NSString stringWithFormat:@"Illegal escape character [%x]", bytes[index]]]; + return sbjson4_token_error; + } + } + + break; + + default: + index++; + break; + } + } +} + +- (sbjson4_token_t)getNumberToken:(char **)token length:(NSUInteger *)length { + NSUInteger num_start = index; + if (bytes[index] == '-') { + index++; + + if (![self haveOneMoreCharacter]) + return sbjson4_token_eof; + } + + sbjson4_token_t tok = sbjson4_token_integer; + if (bytes[index] == '0') { + index++; + + if (![self haveOneMoreCharacter]) + return sbjson4_token_eof; + + if (isdigit(bytes[index])) { + [self setError:@"Leading zero is illegal in number"]; + return sbjson4_token_error; + } + } + + while (isdigit(bytes[index])) { + index++; + if (![self haveOneMoreCharacter]) + return sbjson4_token_eof; + } + + if (![self haveOneMoreCharacter]) + return sbjson4_token_eof; + + + if (bytes[index] == '.') { + index++; + tok = sbjson4_token_real; + + if (![self haveOneMoreCharacter]) + return sbjson4_token_eof; + + NSUInteger fraction_start = index; + while (isdigit(bytes[index])) { + index++; + if (![self haveOneMoreCharacter]) + return sbjson4_token_eof; + } + + if (fraction_start == index) { + [self setError:@"No digits after decimal point"]; + return sbjson4_token_error; + } + } + + if (bytes[index] == 'e' || bytes[index] == 'E') { + index++; + tok = sbjson4_token_real; + + if (![self haveOneMoreCharacter]) + return sbjson4_token_eof; + + if (bytes[index] == '-' || bytes[index] == '+') { + index++; + if (![self haveOneMoreCharacter]) + return sbjson4_token_eof; + } + + NSUInteger exp_start = index; + while (isdigit(bytes[index])) { + index++; + if (![self haveOneMoreCharacter]) + return sbjson4_token_eof; + } + + if (exp_start == index) { + [self setError:@"No digits in exponent"]; + return sbjson4_token_error; + } + + } + + if (num_start + 1 == index && bytes[num_start] == '-') { + [self setError:@"No digits after initial minus"]; + return sbjson4_token_error; + } + + *token = (char *)(bytes + num_start); + *length = index - num_start; + return tok; +} + + +- (sbjson4_token_t)getToken:(char **)token length:(NSUInteger *)length { + [self skipWhitespace]; + NSUInteger copyOfIndex = index; + + unichar ch; + if (![self getUnichar:&ch]) + return sbjson4_token_eof; + + sbjson4_token_t tok; + switch (ch) { + case '{': { + index++; + tok = sbjson4_token_object_open; + break; + } + case '}': { + index++; + tok = sbjson4_token_object_close; + break; + + } + case '[': { + index++; + tok = sbjson4_token_array_open; + break; + + } + case ']': { + index++; + tok = sbjson4_token_array_close; + break; + + } + case 't': { + tok = [self match:"true" retval:sbjson4_token_bool token:token length:length]; + break; + + } + case 'f': { + tok = [self match:"false" retval:sbjson4_token_bool token:token length:length]; + break; + + } + case 'n': { + tok = [self match:"null" retval:sbjson4_token_null token:token length:length]; + break; + + } + case ',': { + index++; + tok = sbjson4_token_value_sep; + break; + + } + case ':': { + index++; + tok = sbjson4_token_entry_sep; + break; + + } + case '"': { + tok = [self getStringToken:token length:length]; + break; + + } + case '-': + case '0' ... '9': { + tok = [self getNumberToken:token length:length]; + break; + + } + case '+': { + self.error = @"Leading + is illegal in number"; + tok = sbjson4_token_error; + break; + + } + default: { + self.error = [NSString stringWithFormat:@"Illegal start of token [%c]", ch]; + tok = sbjson4_token_error; + break; + } + } + + if (tok == sbjson4_token_eof) { + // We ran out of bytes before we could finish parsing the current token. + // Back up to the start & wait for more data. + index = copyOfIndex; + } + + return tok; +} + +@end diff --git a/TalkinToTheNet/Pods/SBJson/src/main/objc/SBJson4StreamWriter.h b/TalkinToTheNet/Pods/SBJson/src/main/objc/SBJson4StreamWriter.h new file mode 100644 index 0000000..8b8b755 --- /dev/null +++ b/TalkinToTheNet/Pods/SBJson/src/main/objc/SBJson4StreamWriter.h @@ -0,0 +1,210 @@ +/* + Copyright (c) 2010, Stig Brautaset. + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + Neither the name of the the author nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS + IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A + PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import + +/// Enable JSON writing for non-native objects +@interface NSObject (SBProxyForJson) + +/** + Allows generation of JSON for otherwise unsupported classes. + + If you have a custom class that you want to create a JSON representation + for you can implement this method in your class. It should return a + representation of your object defined in terms of objects that can be + translated into JSON. For example, a Person object might implement it like this: + + - (id)proxyForJson { + return [NSDictionary dictionaryWithObjectsAndKeys: + name, @"name", + phone, @"phone", + email, @"email", + nil]; + } + + */ +- (id)proxyForJson; + +@end + +@class SBJson4StreamWriter; + +@protocol SBJson4StreamWriterDelegate + +- (void)writer:(SBJson4StreamWriter *)writer appendBytes:(const void *)bytes length:(NSUInteger)length; + +@end + +@class SBJson4StreamWriterState; + +/** + The Stream Writer class. + + Accepts a stream of messages and writes JSON of these to its delegate object. + + This class provides a range of high-, mid- and low-level methods. You can mix + and match calls to these. For example, you may want to call -writeArrayOpen + to start an array and then repeatedly call -writeObject: with various objects + before finishing off with a -writeArrayClose call. + + Objective-C types are mapped to JSON types in the following way: + + - NSNull -> null + - NSString -> string + - NSArray -> array + - NSDictionary -> object + - NSNumber's -initWithBool:YES -> true + - NSNumber's -initWithBool:NO -> false + - NSNumber -> number + + NSNumber instances created with the -numberWithBool: method are + converted into the JSON boolean "true" and "false" values, and vice + versa. Any other NSNumber instances are converted to a JSON number the + way you would expect. + + @warning: In JSON the keys of an object must be strings. NSDictionary + keys need not be, but attempting to convert an NSDictionary with + non-string keys into JSON will throw an exception.* + + */ + +@interface SBJson4StreamWriter : NSObject { + NSMutableDictionary *cache; +} + +@property (nonatomic, weak) SBJson4StreamWriterState *state; // Internal +@property (nonatomic, readonly, strong) NSMutableArray *stateStack; // Internal + +/** + delegate to receive JSON output + Delegate that will receive messages with output. + */ +@property (nonatomic, weak) id delegate; + +/** + The maximum depth. + + Defaults to 512. If the input is nested deeper than this the input will be deemed to be + malicious and the parser returns nil, signalling an error. ("Nested too deep".) You can + turn off this security feature by setting the maxDepth value to 0. + */ +@property(nonatomic) NSUInteger maxDepth; + +/** + Whether we are generating human-readable (multi line) JSON. + + Set whether or not to generate human-readable JSON. The default is NO, which produces + JSON without any whitespace between tokens. If set to YES, generates human-readable + JSON with line breaks after each array value and dictionary key/value pair, indented two + spaces per nesting level. + */ +@property(nonatomic) BOOL humanReadable; + +/** + Whether or not to sort the dictionary keys in the output. + + If this is set to YES, the dictionary keys in the JSON output will be in sorted order. + (This is useful if you need to compare two structures, for example.) The default is NO. + */ +@property(nonatomic) BOOL sortKeys; + +/** + An optional comparator to be used if sortKeys is YES. + + If this is nil, sorting will be done via @selector(compare:). + */ +@property (nonatomic, copy) NSComparator sortKeysComparator; + +/// Contains the error description after an error has occurred. +@property (nonatomic, copy) NSString *error; + +/** + Write an NSDictionary to the JSON stream. + @return YES if successful, or NO on failure + */ +- (BOOL)writeObject:(NSDictionary*)dict; + +/** + Write an NSArray to the JSON stream. + @return YES if successful, or NO on failure + */ +- (BOOL)writeArray:(NSArray *)array; + +/** + Start writing an Object to the stream + @return YES if successful, or NO on failure +*/ +- (BOOL)writeObjectOpen; + +/** + Close the current object being written + @return YES if successful, or NO on failure +*/ +- (BOOL)writeObjectClose; + +/** Start writing an Array to the stream + @return YES if successful, or NO on failure +*/ +- (BOOL)writeArrayOpen; + +/** Close the current Array being written + @return YES if successful, or NO on failure +*/ +- (BOOL)writeArrayClose; + +/** Write a null to the stream + @return YES if successful, or NO on failure +*/ +- (BOOL)writeNull; + +/** Write a boolean to the stream + @return YES if successful, or NO on failure +*/ +- (BOOL)writeBool:(BOOL)x; + +/** Write a Number to the stream + @return YES if successful, or NO on failure +*/ +- (BOOL)writeNumber:(NSNumber*)n; + +/** Write a String to the stream + @return YES if successful, or NO on failure +*/ +- (BOOL)writeString:(NSString*)s; + +@end + +@interface SBJson4StreamWriter (Private) +- (BOOL)writeValue:(id)v; +- (void)appendBytes:(const void *)bytes length:(NSUInteger)length; +@end + diff --git a/TalkinToTheNet/Pods/SBJson/src/main/objc/SBJson4StreamWriter.m b/TalkinToTheNet/Pods/SBJson/src/main/objc/SBJson4StreamWriter.m new file mode 100644 index 0000000..843a279 --- /dev/null +++ b/TalkinToTheNet/Pods/SBJson/src/main/objc/SBJson4StreamWriter.m @@ -0,0 +1,358 @@ +/* + Copyright (c) 2010, Stig Brautaset. + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + Neither the name of the the author nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS + IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A + PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#if !__has_feature(objc_arc) +#error "This source file must be compiled with ARC enabled!" +#endif + +#import "SBJson4StreamWriter.h" +#import "SBJson4StreamWriterState.h" + +static NSNumber *kTrue; +static NSNumber *kFalse; +static NSNumber *kPositiveInfinity; +static NSNumber *kNegativeInfinity; + + +@implementation SBJson4StreamWriter + ++ (void)initialize { + kPositiveInfinity = [NSNumber numberWithDouble:+HUGE_VAL]; + kNegativeInfinity = [NSNumber numberWithDouble:-HUGE_VAL]; + kTrue = [NSNumber numberWithBool:YES]; + kFalse = [NSNumber numberWithBool:NO]; +} + +#pragma mark Housekeeping + +- (id)init { + self = [super init]; + if (self) { + _maxDepth = 32u; + _stateStack = [[NSMutableArray alloc] initWithCapacity:_maxDepth]; + _state = [SBJson4StreamWriterStateStart sharedInstance]; + cache = [[NSMutableDictionary alloc] initWithCapacity:32]; + } + return self; +} + +#pragma mark Methods + +- (void)appendBytes:(const void *)bytes length:(NSUInteger)length { + [_delegate writer:self appendBytes:bytes length:length]; +} + +- (BOOL)writeObject:(NSDictionary *)dict { + if (![self writeObjectOpen]) + return NO; + + NSArray *keys = [dict allKeys]; + + if (_sortKeys) { + if (_sortKeysComparator) { + keys = [keys sortedArrayWithOptions:NSSortStable usingComparator:_sortKeysComparator]; + } + else{ + keys = [keys sortedArrayUsingSelector:@selector(compare:)]; + } + } + + for (id k in keys) { + if (![k isKindOfClass:[NSString class]]) { + self.error = [NSString stringWithFormat:@"JSON object key must be string: %@", k]; + return NO; + } + + if (![self writeString:k]) + return NO; + if (![self writeValue:[dict objectForKey:k]]) + return NO; + } + + return [self writeObjectClose]; +} + +- (BOOL)writeArray:(NSArray*)array { + if (![self writeArrayOpen]) + return NO; + for (id v in array) + if (![self writeValue:v]) + return NO; + return [self writeArrayClose]; +} + + +- (BOOL)writeObjectOpen { + if ([_state isInvalidState:self]) return NO; + if ([_state expectingKey:self]) return NO; + [_state appendSeparator:self]; + if (_humanReadable && _stateStack.count) [_state appendWhitespace:self]; + + [_stateStack addObject:_state]; + self.state = [SBJson4StreamWriterStateObjectStart sharedInstance]; + + if (_maxDepth && _stateStack.count > _maxDepth) { + self.error = @"Nested too deep"; + return NO; + } + + [_delegate writer:self appendBytes:"{" length:1]; + return YES; +} + +- (BOOL)writeObjectClose { + if ([_state isInvalidState:self]) return NO; + + SBJson4StreamWriterState *prev = _state; + + self.state = [_stateStack lastObject]; + [_stateStack removeLastObject]; + + if (_humanReadable) [prev appendWhitespace:self]; + [_delegate writer:self appendBytes:"}" length:1]; + + [_state transitionState:self]; + return YES; +} + +- (BOOL)writeArrayOpen { + if ([_state isInvalidState:self]) return NO; + if ([_state expectingKey:self]) return NO; + [_state appendSeparator:self]; + if (_humanReadable && _stateStack.count) [_state appendWhitespace:self]; + + [_stateStack addObject:_state]; + self.state = [SBJson4StreamWriterStateArrayStart sharedInstance]; + + if (_maxDepth && _stateStack.count > _maxDepth) { + self.error = @"Nested too deep"; + return NO; + } + + [_delegate writer:self appendBytes:"[" length:1]; + return YES; +} + +- (BOOL)writeArrayClose { + if ([_state isInvalidState:self]) return NO; + if ([_state expectingKey:self]) return NO; + + SBJson4StreamWriterState *prev = _state; + + self.state = [_stateStack lastObject]; + [_stateStack removeLastObject]; + + if (_humanReadable) [prev appendWhitespace:self]; + [_delegate writer:self appendBytes:"]" length:1]; + + [_state transitionState:self]; + return YES; +} + +- (BOOL)writeNull { + if ([_state isInvalidState:self]) return NO; + if ([_state expectingKey:self]) return NO; + [_state appendSeparator:self]; + if (_humanReadable) [_state appendWhitespace:self]; + + [_delegate writer:self appendBytes:"null" length:4]; + [_state transitionState:self]; + return YES; +} + +- (BOOL)writeBool:(BOOL)x { + if ([_state isInvalidState:self]) return NO; + if ([_state expectingKey:self]) return NO; + [_state appendSeparator:self]; + if (_humanReadable) [_state appendWhitespace:self]; + + if (x) + [_delegate writer:self appendBytes:"true" length:4]; + else + [_delegate writer:self appendBytes:"false" length:5]; + [_state transitionState:self]; + return YES; +} + + +- (BOOL)writeValue:(id)o { + if ([o isKindOfClass:[NSDictionary class]]) { + return [self writeObject:o]; + + } else if ([o isKindOfClass:[NSArray class]]) { + return [self writeArray:o]; + + } else if ([o isKindOfClass:[NSString class]]) { + [self writeString:o]; + return YES; + + } else if ([o isKindOfClass:[NSNumber class]]) { + return [self writeNumber:o]; + + } else if ([o isKindOfClass:[NSNull class]]) { + return [self writeNull]; + + } else if ([o respondsToSelector:@selector(proxyForJson)]) { + return [self writeValue:[o proxyForJson]]; + + } + + self.error = [NSString stringWithFormat:@"JSON serialisation not supported for %@", [o class]]; + return NO; +} + +static const char *strForChar(int c) { + switch (c) { + case 0: return "\\u0000"; + case 1: return "\\u0001"; + case 2: return "\\u0002"; + case 3: return "\\u0003"; + case 4: return "\\u0004"; + case 5: return "\\u0005"; + case 6: return "\\u0006"; + case 7: return "\\u0007"; + case 8: return "\\b"; + case 9: return "\\t"; + case 10: return "\\n"; + case 11: return "\\u000b"; + case 12: return "\\f"; + case 13: return "\\r"; + case 14: return "\\u000e"; + case 15: return "\\u000f"; + case 16: return "\\u0010"; + case 17: return "\\u0011"; + case 18: return "\\u0012"; + case 19: return "\\u0013"; + case 20: return "\\u0014"; + case 21: return "\\u0015"; + case 22: return "\\u0016"; + case 23: return "\\u0017"; + case 24: return "\\u0018"; + case 25: return "\\u0019"; + case 26: return "\\u001a"; + case 27: return "\\u001b"; + case 28: return "\\u001c"; + case 29: return "\\u001d"; + case 30: return "\\u001e"; + case 31: return "\\u001f"; + case 34: return "\\\""; + case 92: return "\\\\"; + default: + [NSException raise:@"Illegal escape char" format:@"-->%c<-- is not a legal escape character", c]; + return NULL; + } +} + +- (BOOL)writeString:(NSString*)string { + if ([_state isInvalidState:self]) return NO; + [_state appendSeparator:self]; + if (_humanReadable) [_state appendWhitespace:self]; + + NSMutableData *buf = [cache objectForKey:string]; + if (!buf) { + + NSUInteger len = [string lengthOfBytesUsingEncoding:NSUTF8StringEncoding]; + const char *utf8 = [string UTF8String]; + NSUInteger written = 0, i = 0; + + buf = [NSMutableData dataWithCapacity:(NSUInteger)(len * 1.1f)]; + [buf appendBytes:"\"" length:1]; + + for (i = 0; i < len; i++) { + int c = utf8[i]; + BOOL isControlChar = c >= 0 && c < 32; + if (isControlChar || c == '"' || c == '\\') { + if (i - written) + [buf appendBytes:utf8 + written length:i - written]; + written = i + 1; + + const char *t = strForChar(c); + [buf appendBytes:t length:strlen(t)]; + } + } + + if (i - written) + [buf appendBytes:utf8 + written length:i - written]; + + [buf appendBytes:"\"" length:1]; + [cache setObject:buf forKey:string]; + } + + [_delegate writer:self appendBytes:[buf bytes] length:[buf length]]; + [_state transitionState:self]; + return YES; +} + +- (BOOL)writeNumber:(NSNumber*)number { + if (number == kTrue || number == kFalse) + return [self writeBool:[number boolValue]]; + + if ([_state isInvalidState:self]) return NO; + if ([_state expectingKey:self]) return NO; + [_state appendSeparator:self]; + if (_humanReadable) [_state appendWhitespace:self]; + + if ([kPositiveInfinity isEqualToNumber:number]) { + self.error = @"+Infinity is not a valid number in JSON"; + return NO; + + } else if ([kNegativeInfinity isEqualToNumber:number]) { + self.error = @"-Infinity is not a valid number in JSON"; + return NO; + + } else if (isnan([number doubleValue])) { + self.error = @"NaN is not a valid number in JSON"; + return NO; + } + + const char *objcType = [number objCType]; + char num[128]; + size_t len; + + switch (objcType[0]) { + case 'c': case 'i': case 's': case 'l': case 'q': + len = snprintf(num, sizeof num, "%lld", [number longLongValue]); + break; + case 'C': case 'I': case 'S': case 'L': case 'Q': + len = snprintf(num, sizeof num, "%llu", [number unsignedLongLongValue]); + break; + case 'f': case 'd': default: { + len = snprintf(num, sizeof num, "%.17g", [number doubleValue]); + break; + } + } + [_delegate writer:self appendBytes:num length: len]; + [_state transitionState:self]; + return YES; +} + +@end diff --git a/TalkinToTheNet/Pods/SBJson/src/main/objc/SBJson4StreamWriterState.h b/TalkinToTheNet/Pods/SBJson/src/main/objc/SBJson4StreamWriterState.h new file mode 100644 index 0000000..020f715 --- /dev/null +++ b/TalkinToTheNet/Pods/SBJson/src/main/objc/SBJson4StreamWriterState.h @@ -0,0 +1,69 @@ +/* + Copyright (c) 2010, Stig Brautaset. + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + Neither the name of the the author nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS + IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A + PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import + +@class SBJson4StreamWriter; + +@interface SBJson4StreamWriterState : NSObject ++ (id)sharedInstance; +- (BOOL)isInvalidState:(SBJson4StreamWriter *)writer; +- (void)appendSeparator:(SBJson4StreamWriter *)writer; +- (BOOL)expectingKey:(SBJson4StreamWriter *)writer; +- (void)transitionState:(SBJson4StreamWriter *)writer; +- (void)appendWhitespace:(SBJson4StreamWriter *)writer; +@end + +@interface SBJson4StreamWriterStateObjectStart : SBJson4StreamWriterState +@end + +@interface SBJson4StreamWriterStateObjectKey : SBJson4StreamWriterStateObjectStart +@end + +@interface SBJson4StreamWriterStateObjectValue : SBJson4StreamWriterState +@end + +@interface SBJson4StreamWriterStateArrayStart : SBJson4StreamWriterState +@end + +@interface SBJson4StreamWriterStateArrayValue : SBJson4StreamWriterState +@end + +@interface SBJson4StreamWriterStateStart : SBJson4StreamWriterState +@end + +@interface SBJson4StreamWriterStateComplete : SBJson4StreamWriterState +@end + +@interface SBJson4StreamWriterStateError : SBJson4StreamWriterState +@end + diff --git a/TalkinToTheNet/Pods/SBJson/src/main/objc/SBJson4StreamWriterState.m b/TalkinToTheNet/Pods/SBJson/src/main/objc/SBJson4StreamWriterState.m new file mode 100644 index 0000000..ed7890a --- /dev/null +++ b/TalkinToTheNet/Pods/SBJson/src/main/objc/SBJson4StreamWriterState.m @@ -0,0 +1,147 @@ +/* + Copyright (c) 2010, Stig Brautaset. + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are + met: + + Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + + Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + + Neither the name of the the author nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS + IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED + TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A + PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#if !__has_feature(objc_arc) +#error "This source file must be compiled with ARC enabled!" +#endif + +#import "SBJson4StreamWriterState.h" +#import "SBJson4StreamWriter.h" + +#define SINGLETON \ ++ (id)sharedInstance { \ + static id state = nil; \ + if (!state) { \ + @synchronized(self) { \ + if (!state) state = [[self alloc] init]; \ + } \ + } \ + return state; \ +} + + +@implementation SBJson4StreamWriterState ++ (id)sharedInstance { return nil; } +- (BOOL)isInvalidState:(SBJson4StreamWriter *)writer { return NO; } +- (void)appendSeparator:(SBJson4StreamWriter *)writer {} +- (BOOL)expectingKey:(SBJson4StreamWriter *)writer { return NO; } +- (void)transitionState:(SBJson4StreamWriter *)writer {} +- (void)appendWhitespace:(SBJson4StreamWriter *)writer { + [writer appendBytes:"\n" length:1]; + for (NSUInteger i = 0; i < writer.stateStack.count; i++) + [writer appendBytes:" " length:2]; +} +@end + +@implementation SBJson4StreamWriterStateObjectStart + +SINGLETON + +- (void)transitionState:(SBJson4StreamWriter *)writer { + writer.state = [SBJson4StreamWriterStateObjectValue sharedInstance]; +} +- (BOOL)expectingKey:(SBJson4StreamWriter *)writer { + writer.error = @"JSON object key must be string"; + return YES; +} +@end + +@implementation SBJson4StreamWriterStateObjectKey + +SINGLETON + +- (void)appendSeparator:(SBJson4StreamWriter *)writer { + [writer appendBytes:"," length:1]; +} +@end + +@implementation SBJson4StreamWriterStateObjectValue + +SINGLETON + +- (void)appendSeparator:(SBJson4StreamWriter *)writer { + [writer appendBytes:":" length:1]; +} +- (void)transitionState:(SBJson4StreamWriter *)writer { + writer.state = [SBJson4StreamWriterStateObjectKey sharedInstance]; +} +- (void)appendWhitespace:(SBJson4StreamWriter *)writer { + [writer appendBytes:" " length:1]; +} +@end + +@implementation SBJson4StreamWriterStateArrayStart + +SINGLETON + +- (void)transitionState:(SBJson4StreamWriter *)writer { + writer.state = [SBJson4StreamWriterStateArrayValue sharedInstance]; +} +@end + +@implementation SBJson4StreamWriterStateArrayValue + +SINGLETON + +- (void)appendSeparator:(SBJson4StreamWriter *)writer { + [writer appendBytes:"," length:1]; +} +@end + +@implementation SBJson4StreamWriterStateStart + +SINGLETON + + +- (void)transitionState:(SBJson4StreamWriter *)writer { + writer.state = [SBJson4StreamWriterStateComplete sharedInstance]; +} +- (void)appendSeparator:(SBJson4StreamWriter *)writer { +} +@end + +@implementation SBJson4StreamWriterStateComplete + +SINGLETON + +- (BOOL)isInvalidState:(SBJson4StreamWriter *)writer { + writer.error = @"Stream is closed"; + return YES; +} +@end + +@implementation SBJson4StreamWriterStateError + +SINGLETON + +@end + diff --git a/TalkinToTheNet/Pods/SBJson/src/main/objc/SBJson4Writer.h b/TalkinToTheNet/Pods/SBJson/src/main/objc/SBJson4Writer.h new file mode 100644 index 0000000..bc29290 --- /dev/null +++ b/TalkinToTheNet/Pods/SBJson/src/main/objc/SBJson4Writer.h @@ -0,0 +1,103 @@ +/* + Copyright (C) 2009 Stig Brautaset. All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + + * Neither the name of the author nor the names of its contributors may be used + to endorse or promote products derived from this software without specific + prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE + FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#import + +/** + The JSON writer class. + + This uses SBJson4StreamWriter internally. + + */ + +@interface SBJson4Writer : NSObject + +/** + The maximum depth. + + Defaults to 32. If the input is nested deeper than this the input will be deemed to be + malicious and the parser returns nil, signalling an error. ("Nested too deep".) You can + turn off this security feature by setting the maxDepth value to 0. + */ +@property(nonatomic) NSUInteger maxDepth; + +/** + Return an error trace, or nil if there was no errors. + + Note that this method returns the trace of the last method that failed. + You need to check the return value of the call you're making to figure out + if the call actually failed, before you know call this method. + */ +@property (nonatomic, readonly, copy) NSString *error; + +/** + Whether we are generating human-readable (multi line) JSON. + + Set whether or not to generate human-readable JSON. The default is NO, which produces + JSON without any whitespace. (Except inside strings.) If set to YES, generates human-readable + JSON with line breaks after each array value and dictionary key/value pair, indented two + spaces per nesting level. + */ +@property(nonatomic) BOOL humanReadable; + +/** + Whether or not to sort the dictionary keys in the output. + + If this is set to YES, the dictionary keys in the JSON output will be in sorted order. + (This is useful if you need to compare two structures, for example.) The default is NO. + */ +@property(nonatomic) BOOL sortKeys; + +/** + An optional comparator to be used if sortKeys is YES. + + If this is nil, sorting will be done via @selector(compare:). + */ +@property (nonatomic, copy) NSComparator sortKeysComparator; + +/** + Generates string with JSON representation for the given object. + + Returns a string containing JSON representation of the passed in value, or nil on error. + If nil is returned and error is not NULL, *error can be interrogated to find the cause of the error. + + @param value any instance that can be represented as JSON text. + */ +- (NSString*)stringWithObject:(id)value; + +/** + Generates JSON representation for the given object. + + Returns an NSData object containing JSON represented as UTF8 text, or nil on error. + + @param value any instance that can be represented as JSON text. + */ +- (NSData*)dataWithObject:(id)value; + +@end diff --git a/TalkinToTheNet/Pods/SBJson/src/main/objc/SBJson4Writer.m b/TalkinToTheNet/Pods/SBJson/src/main/objc/SBJson4Writer.m new file mode 100644 index 0000000..9eec555 --- /dev/null +++ b/TalkinToTheNet/Pods/SBJson/src/main/objc/SBJson4Writer.m @@ -0,0 +1,102 @@ +/* + Copyright (C) 2009 Stig Brautaset. All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + + * Neither the name of the author nor the names of its contributors may be used + to endorse or promote products derived from this software without specific + prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE + DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE + FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR + SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER + CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, + OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#if !__has_feature(objc_arc) +#error "This source file must be compiled with ARC enabled!" +#endif + +#import "SBJson4Writer.h" +#import "SBJson4StreamWriter.h" + + +@interface SBJson4Writer () < SBJson4StreamWriterDelegate > +@property (nonatomic, copy) NSString *error; +@property (nonatomic, strong) NSMutableData *acc; +@end + +@implementation SBJson4Writer + +- (id)init { + self = [super init]; + if (self) { + self.maxDepth = 32u; + } + return self; +} + + +- (NSString*)stringWithObject:(id)value { + NSData *data = [self dataWithObject:value]; + if (data) + return [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]; + return nil; +} + +- (NSData*)dataWithObject:(id)object { + self.error = nil; + + self.acc = [[NSMutableData alloc] initWithCapacity:8096u]; + + SBJson4StreamWriter *streamWriter = [[SBJson4StreamWriter alloc] init]; + streamWriter.sortKeys = self.sortKeys; + streamWriter.maxDepth = self.maxDepth; + streamWriter.sortKeysComparator = self.sortKeysComparator; + streamWriter.humanReadable = self.humanReadable; + streamWriter.delegate = self; + + BOOL ok = NO; + if ([object isKindOfClass:[NSDictionary class]]) + ok = [streamWriter writeObject:object]; + + else if ([object isKindOfClass:[NSArray class]]) + ok = [streamWriter writeArray:object]; + + else if ([object respondsToSelector:@selector(proxyForJson)]) + return [self dataWithObject:[object proxyForJson]]; + else { + self.error = @"Not valid type for JSON"; + return nil; + } + + if (ok) + return self.acc; + + self.error = streamWriter.error; + return nil; +} + +#pragma mark SBJson4StreamWriterDelegate + +- (void)writer:(SBJson4StreamWriter *)writer appendBytes:(const void *)bytes length:(NSUInteger)length { + [self.acc appendBytes:bytes length:length]; +} + + + +@end diff --git a/TalkinToTheNet/Pods/Target Support Files/Pods-KPgoLoco/Pods-KPgoLoco-acknowledgements.markdown b/TalkinToTheNet/Pods/Target Support Files/Pods-KPgoLoco/Pods-KPgoLoco-acknowledgements.markdown new file mode 100644 index 0000000..d90223c --- /dev/null +++ b/TalkinToTheNet/Pods/Target Support Files/Pods-KPgoLoco/Pods-KPgoLoco-acknowledgements.markdown @@ -0,0 +1,31 @@ +# Acknowledgements +This application makes use of the following third party libraries: + +## SBJson + +Copyright (C) 2007-2015 Stig Brautaset. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. +* Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. +* Neither the name of the author nor the names of its contributors may be used + to endorse or promote products derived from this software without specific + prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +Generated by CocoaPods - http://cocoapods.org diff --git a/TalkinToTheNet/Pods/Target Support Files/Pods-KPgoLoco/Pods-KPgoLoco-acknowledgements.plist b/TalkinToTheNet/Pods/Target Support Files/Pods-KPgoLoco/Pods-KPgoLoco-acknowledgements.plist new file mode 100644 index 0000000..4fbec4e --- /dev/null +++ b/TalkinToTheNet/Pods/Target Support Files/Pods-KPgoLoco/Pods-KPgoLoco-acknowledgements.plist @@ -0,0 +1,61 @@ + + + + + PreferenceSpecifiers + + + FooterText + This application makes use of the following third party libraries: + Title + Acknowledgements + Type + PSGroupSpecifier + + + FooterText + Copyright (C) 2007-2015 Stig Brautaset. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. +* Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. +* Neither the name of the author nor the names of its contributors may be used + to endorse or promote products derived from this software without specific + prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + Title + SBJson + Type + PSGroupSpecifier + + + FooterText + Generated by CocoaPods - http://cocoapods.org + Title + + Type + PSGroupSpecifier + + + StringsTable + Acknowledgements + Title + Acknowledgements + + diff --git a/TalkinToTheNet/Pods/Target Support Files/Pods-KPgoLoco/Pods-KPgoLoco-dummy.m b/TalkinToTheNet/Pods/Target Support Files/Pods-KPgoLoco/Pods-KPgoLoco-dummy.m new file mode 100644 index 0000000..49b617e --- /dev/null +++ b/TalkinToTheNet/Pods/Target Support Files/Pods-KPgoLoco/Pods-KPgoLoco-dummy.m @@ -0,0 +1,5 @@ +#import +@interface PodsDummy_Pods_KPgoLoco : NSObject +@end +@implementation PodsDummy_Pods_KPgoLoco +@end diff --git a/TalkinToTheNet/Pods/Target Support Files/Pods-KPgoLoco/Pods-KPgoLoco-resources.sh b/TalkinToTheNet/Pods/Target Support Files/Pods-KPgoLoco/Pods-KPgoLoco-resources.sh new file mode 100755 index 0000000..ea685a2 --- /dev/null +++ b/TalkinToTheNet/Pods/Target Support Files/Pods-KPgoLoco/Pods-KPgoLoco-resources.sh @@ -0,0 +1,95 @@ +#!/bin/sh +set -e + +mkdir -p "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" + +RESOURCES_TO_COPY=${PODS_ROOT}/resources-to-copy-${TARGETNAME}.txt +> "$RESOURCES_TO_COPY" + +XCASSET_FILES=() + +realpath() { + DIRECTORY="$(cd "${1%/*}" && pwd)" + FILENAME="${1##*/}" + echo "$DIRECTORY/$FILENAME" +} + +install_resource() +{ + case $1 in + *.storyboard) + echo "ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile ${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .storyboard`.storyboardc ${PODS_ROOT}/$1 --sdk ${SDKROOT}" + ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .storyboard`.storyboardc" "${PODS_ROOT}/$1" --sdk "${SDKROOT}" + ;; + *.xib) + echo "ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile ${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .xib`.nib ${PODS_ROOT}/$1 --sdk ${SDKROOT}" + ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .xib`.nib" "${PODS_ROOT}/$1" --sdk "${SDKROOT}" + ;; + *.framework) + echo "mkdir -p ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" + mkdir -p "${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" + echo "rsync -av ${PODS_ROOT}/$1 ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" + rsync -av "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" + ;; + *.xcdatamodel) + echo "xcrun momc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1"`.mom\"" + xcrun momc "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcdatamodel`.mom" + ;; + *.xcdatamodeld) + echo "xcrun momc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcdatamodeld`.momd\"" + xcrun momc "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcdatamodeld`.momd" + ;; + *.xcmappingmodel) + echo "xcrun mapc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcmappingmodel`.cdm\"" + xcrun mapc "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcmappingmodel`.cdm" + ;; + *.xcassets) + ABSOLUTE_XCASSET_FILE=$(realpath "${PODS_ROOT}/$1") + XCASSET_FILES+=("$ABSOLUTE_XCASSET_FILE") + ;; + /*) + echo "$1" + echo "$1" >> "$RESOURCES_TO_COPY" + ;; + *) + echo "${PODS_ROOT}/$1" + echo "${PODS_ROOT}/$1" >> "$RESOURCES_TO_COPY" + ;; + esac +} + +mkdir -p "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" +rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" +if [[ "${ACTION}" == "install" ]]; then + mkdir -p "${INSTALL_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" + rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${INSTALL_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" +fi +rm -f "$RESOURCES_TO_COPY" + +if [[ -n "${WRAPPER_EXTENSION}" ]] && [ "`xcrun --find actool`" ] && [ -n "$XCASSET_FILES" ] +then + case "${TARGETED_DEVICE_FAMILY}" in + 1,2) + TARGET_DEVICE_ARGS="--target-device ipad --target-device iphone" + ;; + 1) + TARGET_DEVICE_ARGS="--target-device iphone" + ;; + 2) + TARGET_DEVICE_ARGS="--target-device ipad" + ;; + *) + TARGET_DEVICE_ARGS="--target-device mac" + ;; + esac + + # Find all other xcassets (this unfortunately includes those of path pods and other targets). + OTHER_XCASSETS=$(find "$PWD" -iname "*.xcassets" -type d) + while read line; do + if [[ $line != "`realpath $PODS_ROOT`*" ]]; then + XCASSET_FILES+=("$line") + fi + done <<<"$OTHER_XCASSETS" + + printf "%s\0" "${XCASSET_FILES[@]}" | xargs -0 xcrun actool --output-format human-readable-text --notices --warnings --platform "${PLATFORM_NAME}" --minimum-deployment-target "${IPHONEOS_DEPLOYMENT_TARGET}" ${TARGET_DEVICE_ARGS} --compress-pngs --compile "${BUILT_PRODUCTS_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" +fi diff --git a/TalkinToTheNet/Pods/Target Support Files/Pods-KPgoLoco/Pods-KPgoLoco.debug.xcconfig b/TalkinToTheNet/Pods/Target Support Files/Pods-KPgoLoco/Pods-KPgoLoco.debug.xcconfig new file mode 100644 index 0000000..81b4481 --- /dev/null +++ b/TalkinToTheNet/Pods/Target Support Files/Pods-KPgoLoco/Pods-KPgoLoco.debug.xcconfig @@ -0,0 +1,5 @@ +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/SBJson" +OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/SBJson" +OTHER_LDFLAGS = $(inherited) -ObjC -l"SBJson" +PODS_ROOT = ${SRCROOT}/Pods \ No newline at end of file diff --git a/TalkinToTheNet/Pods/Target Support Files/Pods-KPgoLoco/Pods-KPgoLoco.release.xcconfig b/TalkinToTheNet/Pods/Target Support Files/Pods-KPgoLoco/Pods-KPgoLoco.release.xcconfig new file mode 100644 index 0000000..81b4481 --- /dev/null +++ b/TalkinToTheNet/Pods/Target Support Files/Pods-KPgoLoco/Pods-KPgoLoco.release.xcconfig @@ -0,0 +1,5 @@ +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/SBJson" +OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/SBJson" +OTHER_LDFLAGS = $(inherited) -ObjC -l"SBJson" +PODS_ROOT = ${SRCROOT}/Pods \ No newline at end of file diff --git a/TalkinToTheNet/Pods/Target Support Files/Pods-KPgoLocoTests/Pods-KPgoLocoTests-acknowledgements.markdown b/TalkinToTheNet/Pods/Target Support Files/Pods-KPgoLocoTests/Pods-KPgoLocoTests-acknowledgements.markdown new file mode 100644 index 0000000..d90223c --- /dev/null +++ b/TalkinToTheNet/Pods/Target Support Files/Pods-KPgoLocoTests/Pods-KPgoLocoTests-acknowledgements.markdown @@ -0,0 +1,31 @@ +# Acknowledgements +This application makes use of the following third party libraries: + +## SBJson + +Copyright (C) 2007-2015 Stig Brautaset. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. +* Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. +* Neither the name of the author nor the names of its contributors may be used + to endorse or promote products derived from this software without specific + prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +Generated by CocoaPods - http://cocoapods.org diff --git a/TalkinToTheNet/Pods/Target Support Files/Pods-KPgoLocoTests/Pods-KPgoLocoTests-acknowledgements.plist b/TalkinToTheNet/Pods/Target Support Files/Pods-KPgoLocoTests/Pods-KPgoLocoTests-acknowledgements.plist new file mode 100644 index 0000000..4fbec4e --- /dev/null +++ b/TalkinToTheNet/Pods/Target Support Files/Pods-KPgoLocoTests/Pods-KPgoLocoTests-acknowledgements.plist @@ -0,0 +1,61 @@ + + + + + PreferenceSpecifiers + + + FooterText + This application makes use of the following third party libraries: + Title + Acknowledgements + Type + PSGroupSpecifier + + + FooterText + Copyright (C) 2007-2015 Stig Brautaset. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. +* Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. +* Neither the name of the author nor the names of its contributors may be used + to endorse or promote products derived from this software without specific + prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + Title + SBJson + Type + PSGroupSpecifier + + + FooterText + Generated by CocoaPods - http://cocoapods.org + Title + + Type + PSGroupSpecifier + + + StringsTable + Acknowledgements + Title + Acknowledgements + + diff --git a/TalkinToTheNet/Pods/Target Support Files/Pods-KPgoLocoTests/Pods-KPgoLocoTests-dummy.m b/TalkinToTheNet/Pods/Target Support Files/Pods-KPgoLocoTests/Pods-KPgoLocoTests-dummy.m new file mode 100644 index 0000000..86a20af --- /dev/null +++ b/TalkinToTheNet/Pods/Target Support Files/Pods-KPgoLocoTests/Pods-KPgoLocoTests-dummy.m @@ -0,0 +1,5 @@ +#import +@interface PodsDummy_Pods_KPgoLocoTests : NSObject +@end +@implementation PodsDummy_Pods_KPgoLocoTests +@end diff --git a/TalkinToTheNet/Pods/Target Support Files/Pods-KPgoLocoTests/Pods-KPgoLocoTests-resources.sh b/TalkinToTheNet/Pods/Target Support Files/Pods-KPgoLocoTests/Pods-KPgoLocoTests-resources.sh new file mode 100755 index 0000000..ea685a2 --- /dev/null +++ b/TalkinToTheNet/Pods/Target Support Files/Pods-KPgoLocoTests/Pods-KPgoLocoTests-resources.sh @@ -0,0 +1,95 @@ +#!/bin/sh +set -e + +mkdir -p "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" + +RESOURCES_TO_COPY=${PODS_ROOT}/resources-to-copy-${TARGETNAME}.txt +> "$RESOURCES_TO_COPY" + +XCASSET_FILES=() + +realpath() { + DIRECTORY="$(cd "${1%/*}" && pwd)" + FILENAME="${1##*/}" + echo "$DIRECTORY/$FILENAME" +} + +install_resource() +{ + case $1 in + *.storyboard) + echo "ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile ${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .storyboard`.storyboardc ${PODS_ROOT}/$1 --sdk ${SDKROOT}" + ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .storyboard`.storyboardc" "${PODS_ROOT}/$1" --sdk "${SDKROOT}" + ;; + *.xib) + echo "ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile ${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .xib`.nib ${PODS_ROOT}/$1 --sdk ${SDKROOT}" + ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .xib`.nib" "${PODS_ROOT}/$1" --sdk "${SDKROOT}" + ;; + *.framework) + echo "mkdir -p ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" + mkdir -p "${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" + echo "rsync -av ${PODS_ROOT}/$1 ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" + rsync -av "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" + ;; + *.xcdatamodel) + echo "xcrun momc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1"`.mom\"" + xcrun momc "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcdatamodel`.mom" + ;; + *.xcdatamodeld) + echo "xcrun momc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcdatamodeld`.momd\"" + xcrun momc "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcdatamodeld`.momd" + ;; + *.xcmappingmodel) + echo "xcrun mapc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcmappingmodel`.cdm\"" + xcrun mapc "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcmappingmodel`.cdm" + ;; + *.xcassets) + ABSOLUTE_XCASSET_FILE=$(realpath "${PODS_ROOT}/$1") + XCASSET_FILES+=("$ABSOLUTE_XCASSET_FILE") + ;; + /*) + echo "$1" + echo "$1" >> "$RESOURCES_TO_COPY" + ;; + *) + echo "${PODS_ROOT}/$1" + echo "${PODS_ROOT}/$1" >> "$RESOURCES_TO_COPY" + ;; + esac +} + +mkdir -p "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" +rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" +if [[ "${ACTION}" == "install" ]]; then + mkdir -p "${INSTALL_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" + rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${INSTALL_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" +fi +rm -f "$RESOURCES_TO_COPY" + +if [[ -n "${WRAPPER_EXTENSION}" ]] && [ "`xcrun --find actool`" ] && [ -n "$XCASSET_FILES" ] +then + case "${TARGETED_DEVICE_FAMILY}" in + 1,2) + TARGET_DEVICE_ARGS="--target-device ipad --target-device iphone" + ;; + 1) + TARGET_DEVICE_ARGS="--target-device iphone" + ;; + 2) + TARGET_DEVICE_ARGS="--target-device ipad" + ;; + *) + TARGET_DEVICE_ARGS="--target-device mac" + ;; + esac + + # Find all other xcassets (this unfortunately includes those of path pods and other targets). + OTHER_XCASSETS=$(find "$PWD" -iname "*.xcassets" -type d) + while read line; do + if [[ $line != "`realpath $PODS_ROOT`*" ]]; then + XCASSET_FILES+=("$line") + fi + done <<<"$OTHER_XCASSETS" + + printf "%s\0" "${XCASSET_FILES[@]}" | xargs -0 xcrun actool --output-format human-readable-text --notices --warnings --platform "${PLATFORM_NAME}" --minimum-deployment-target "${IPHONEOS_DEPLOYMENT_TARGET}" ${TARGET_DEVICE_ARGS} --compress-pngs --compile "${BUILT_PRODUCTS_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" +fi diff --git a/TalkinToTheNet/Pods/Target Support Files/Pods-KPgoLocoTests/Pods-KPgoLocoTests.debug.xcconfig b/TalkinToTheNet/Pods/Target Support Files/Pods-KPgoLocoTests/Pods-KPgoLocoTests.debug.xcconfig new file mode 100644 index 0000000..81b4481 --- /dev/null +++ b/TalkinToTheNet/Pods/Target Support Files/Pods-KPgoLocoTests/Pods-KPgoLocoTests.debug.xcconfig @@ -0,0 +1,5 @@ +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/SBJson" +OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/SBJson" +OTHER_LDFLAGS = $(inherited) -ObjC -l"SBJson" +PODS_ROOT = ${SRCROOT}/Pods \ No newline at end of file diff --git a/TalkinToTheNet/Pods/Target Support Files/Pods-KPgoLocoTests/Pods-KPgoLocoTests.release.xcconfig b/TalkinToTheNet/Pods/Target Support Files/Pods-KPgoLocoTests/Pods-KPgoLocoTests.release.xcconfig new file mode 100644 index 0000000..81b4481 --- /dev/null +++ b/TalkinToTheNet/Pods/Target Support Files/Pods-KPgoLocoTests/Pods-KPgoLocoTests.release.xcconfig @@ -0,0 +1,5 @@ +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/SBJson" +OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/SBJson" +OTHER_LDFLAGS = $(inherited) -ObjC -l"SBJson" +PODS_ROOT = ${SRCROOT}/Pods \ No newline at end of file diff --git a/TalkinToTheNet/Pods/Target Support Files/Pods-KPgoLocoUITests/Pods-KPgoLocoUITests-acknowledgements.markdown b/TalkinToTheNet/Pods/Target Support Files/Pods-KPgoLocoUITests/Pods-KPgoLocoUITests-acknowledgements.markdown new file mode 100644 index 0000000..d90223c --- /dev/null +++ b/TalkinToTheNet/Pods/Target Support Files/Pods-KPgoLocoUITests/Pods-KPgoLocoUITests-acknowledgements.markdown @@ -0,0 +1,31 @@ +# Acknowledgements +This application makes use of the following third party libraries: + +## SBJson + +Copyright (C) 2007-2015 Stig Brautaset. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. +* Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. +* Neither the name of the author nor the names of its contributors may be used + to endorse or promote products derived from this software without specific + prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +Generated by CocoaPods - http://cocoapods.org diff --git a/TalkinToTheNet/Pods/Target Support Files/Pods-KPgoLocoUITests/Pods-KPgoLocoUITests-acknowledgements.plist b/TalkinToTheNet/Pods/Target Support Files/Pods-KPgoLocoUITests/Pods-KPgoLocoUITests-acknowledgements.plist new file mode 100644 index 0000000..4fbec4e --- /dev/null +++ b/TalkinToTheNet/Pods/Target Support Files/Pods-KPgoLocoUITests/Pods-KPgoLocoUITests-acknowledgements.plist @@ -0,0 +1,61 @@ + + + + + PreferenceSpecifiers + + + FooterText + This application makes use of the following third party libraries: + Title + Acknowledgements + Type + PSGroupSpecifier + + + FooterText + Copyright (C) 2007-2015 Stig Brautaset. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. +* Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. +* Neither the name of the author nor the names of its contributors may be used + to endorse or promote products derived from this software without specific + prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + Title + SBJson + Type + PSGroupSpecifier + + + FooterText + Generated by CocoaPods - http://cocoapods.org + Title + + Type + PSGroupSpecifier + + + StringsTable + Acknowledgements + Title + Acknowledgements + + diff --git a/TalkinToTheNet/Pods/Target Support Files/Pods-KPgoLocoUITests/Pods-KPgoLocoUITests-dummy.m b/TalkinToTheNet/Pods/Target Support Files/Pods-KPgoLocoUITests/Pods-KPgoLocoUITests-dummy.m new file mode 100644 index 0000000..4159b44 --- /dev/null +++ b/TalkinToTheNet/Pods/Target Support Files/Pods-KPgoLocoUITests/Pods-KPgoLocoUITests-dummy.m @@ -0,0 +1,5 @@ +#import +@interface PodsDummy_Pods_KPgoLocoUITests : NSObject +@end +@implementation PodsDummy_Pods_KPgoLocoUITests +@end diff --git a/TalkinToTheNet/Pods/Target Support Files/Pods-KPgoLocoUITests/Pods-KPgoLocoUITests-resources.sh b/TalkinToTheNet/Pods/Target Support Files/Pods-KPgoLocoUITests/Pods-KPgoLocoUITests-resources.sh new file mode 100755 index 0000000..ea685a2 --- /dev/null +++ b/TalkinToTheNet/Pods/Target Support Files/Pods-KPgoLocoUITests/Pods-KPgoLocoUITests-resources.sh @@ -0,0 +1,95 @@ +#!/bin/sh +set -e + +mkdir -p "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" + +RESOURCES_TO_COPY=${PODS_ROOT}/resources-to-copy-${TARGETNAME}.txt +> "$RESOURCES_TO_COPY" + +XCASSET_FILES=() + +realpath() { + DIRECTORY="$(cd "${1%/*}" && pwd)" + FILENAME="${1##*/}" + echo "$DIRECTORY/$FILENAME" +} + +install_resource() +{ + case $1 in + *.storyboard) + echo "ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile ${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .storyboard`.storyboardc ${PODS_ROOT}/$1 --sdk ${SDKROOT}" + ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .storyboard`.storyboardc" "${PODS_ROOT}/$1" --sdk "${SDKROOT}" + ;; + *.xib) + echo "ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile ${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .xib`.nib ${PODS_ROOT}/$1 --sdk ${SDKROOT}" + ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .xib`.nib" "${PODS_ROOT}/$1" --sdk "${SDKROOT}" + ;; + *.framework) + echo "mkdir -p ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" + mkdir -p "${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" + echo "rsync -av ${PODS_ROOT}/$1 ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" + rsync -av "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" + ;; + *.xcdatamodel) + echo "xcrun momc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1"`.mom\"" + xcrun momc "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcdatamodel`.mom" + ;; + *.xcdatamodeld) + echo "xcrun momc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcdatamodeld`.momd\"" + xcrun momc "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcdatamodeld`.momd" + ;; + *.xcmappingmodel) + echo "xcrun mapc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcmappingmodel`.cdm\"" + xcrun mapc "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcmappingmodel`.cdm" + ;; + *.xcassets) + ABSOLUTE_XCASSET_FILE=$(realpath "${PODS_ROOT}/$1") + XCASSET_FILES+=("$ABSOLUTE_XCASSET_FILE") + ;; + /*) + echo "$1" + echo "$1" >> "$RESOURCES_TO_COPY" + ;; + *) + echo "${PODS_ROOT}/$1" + echo "${PODS_ROOT}/$1" >> "$RESOURCES_TO_COPY" + ;; + esac +} + +mkdir -p "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" +rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" +if [[ "${ACTION}" == "install" ]]; then + mkdir -p "${INSTALL_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" + rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${INSTALL_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" +fi +rm -f "$RESOURCES_TO_COPY" + +if [[ -n "${WRAPPER_EXTENSION}" ]] && [ "`xcrun --find actool`" ] && [ -n "$XCASSET_FILES" ] +then + case "${TARGETED_DEVICE_FAMILY}" in + 1,2) + TARGET_DEVICE_ARGS="--target-device ipad --target-device iphone" + ;; + 1) + TARGET_DEVICE_ARGS="--target-device iphone" + ;; + 2) + TARGET_DEVICE_ARGS="--target-device ipad" + ;; + *) + TARGET_DEVICE_ARGS="--target-device mac" + ;; + esac + + # Find all other xcassets (this unfortunately includes those of path pods and other targets). + OTHER_XCASSETS=$(find "$PWD" -iname "*.xcassets" -type d) + while read line; do + if [[ $line != "`realpath $PODS_ROOT`*" ]]; then + XCASSET_FILES+=("$line") + fi + done <<<"$OTHER_XCASSETS" + + printf "%s\0" "${XCASSET_FILES[@]}" | xargs -0 xcrun actool --output-format human-readable-text --notices --warnings --platform "${PLATFORM_NAME}" --minimum-deployment-target "${IPHONEOS_DEPLOYMENT_TARGET}" ${TARGET_DEVICE_ARGS} --compress-pngs --compile "${BUILT_PRODUCTS_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" +fi diff --git a/TalkinToTheNet/Pods/Target Support Files/Pods-KPgoLocoUITests/Pods-KPgoLocoUITests.debug.xcconfig b/TalkinToTheNet/Pods/Target Support Files/Pods-KPgoLocoUITests/Pods-KPgoLocoUITests.debug.xcconfig new file mode 100644 index 0000000..81b4481 --- /dev/null +++ b/TalkinToTheNet/Pods/Target Support Files/Pods-KPgoLocoUITests/Pods-KPgoLocoUITests.debug.xcconfig @@ -0,0 +1,5 @@ +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/SBJson" +OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/SBJson" +OTHER_LDFLAGS = $(inherited) -ObjC -l"SBJson" +PODS_ROOT = ${SRCROOT}/Pods \ No newline at end of file diff --git a/TalkinToTheNet/Pods/Target Support Files/Pods-KPgoLocoUITests/Pods-KPgoLocoUITests.release.xcconfig b/TalkinToTheNet/Pods/Target Support Files/Pods-KPgoLocoUITests/Pods-KPgoLocoUITests.release.xcconfig new file mode 100644 index 0000000..81b4481 --- /dev/null +++ b/TalkinToTheNet/Pods/Target Support Files/Pods-KPgoLocoUITests/Pods-KPgoLocoUITests.release.xcconfig @@ -0,0 +1,5 @@ +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/SBJson" +OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/SBJson" +OTHER_LDFLAGS = $(inherited) -ObjC -l"SBJson" +PODS_ROOT = ${SRCROOT}/Pods \ No newline at end of file diff --git a/TalkinToTheNet/Pods/Target Support Files/Pods/Pods-acknowledgements.markdown b/TalkinToTheNet/Pods/Target Support Files/Pods/Pods-acknowledgements.markdown new file mode 100644 index 0000000..d90223c --- /dev/null +++ b/TalkinToTheNet/Pods/Target Support Files/Pods/Pods-acknowledgements.markdown @@ -0,0 +1,31 @@ +# Acknowledgements +This application makes use of the following third party libraries: + +## SBJson + +Copyright (C) 2007-2015 Stig Brautaset. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. +* Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. +* Neither the name of the author nor the names of its contributors may be used + to endorse or promote products derived from this software without specific + prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +Generated by CocoaPods - http://cocoapods.org diff --git a/TalkinToTheNet/Pods/Target Support Files/Pods/Pods-acknowledgements.plist b/TalkinToTheNet/Pods/Target Support Files/Pods/Pods-acknowledgements.plist new file mode 100644 index 0000000..4fbec4e --- /dev/null +++ b/TalkinToTheNet/Pods/Target Support Files/Pods/Pods-acknowledgements.plist @@ -0,0 +1,61 @@ + + + + + PreferenceSpecifiers + + + FooterText + This application makes use of the following third party libraries: + Title + Acknowledgements + Type + PSGroupSpecifier + + + FooterText + Copyright (C) 2007-2015 Stig Brautaset. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions are met: + +* Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. +* Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. +* Neither the name of the author nor the names of its contributors may be used + to endorse or promote products derived from this software without specific + prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE +DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR +SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER +CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + Title + SBJson + Type + PSGroupSpecifier + + + FooterText + Generated by CocoaPods - http://cocoapods.org + Title + + Type + PSGroupSpecifier + + + StringsTable + Acknowledgements + Title + Acknowledgements + + diff --git a/TalkinToTheNet/Pods/Target Support Files/Pods/Pods-dummy.m b/TalkinToTheNet/Pods/Target Support Files/Pods/Pods-dummy.m new file mode 100644 index 0000000..ade64bd --- /dev/null +++ b/TalkinToTheNet/Pods/Target Support Files/Pods/Pods-dummy.m @@ -0,0 +1,5 @@ +#import +@interface PodsDummy_Pods : NSObject +@end +@implementation PodsDummy_Pods +@end diff --git a/TalkinToTheNet/Pods/Target Support Files/Pods/Pods-resources.sh b/TalkinToTheNet/Pods/Target Support Files/Pods/Pods-resources.sh new file mode 100755 index 0000000..ea685a2 --- /dev/null +++ b/TalkinToTheNet/Pods/Target Support Files/Pods/Pods-resources.sh @@ -0,0 +1,95 @@ +#!/bin/sh +set -e + +mkdir -p "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" + +RESOURCES_TO_COPY=${PODS_ROOT}/resources-to-copy-${TARGETNAME}.txt +> "$RESOURCES_TO_COPY" + +XCASSET_FILES=() + +realpath() { + DIRECTORY="$(cd "${1%/*}" && pwd)" + FILENAME="${1##*/}" + echo "$DIRECTORY/$FILENAME" +} + +install_resource() +{ + case $1 in + *.storyboard) + echo "ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile ${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .storyboard`.storyboardc ${PODS_ROOT}/$1 --sdk ${SDKROOT}" + ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .storyboard`.storyboardc" "${PODS_ROOT}/$1" --sdk "${SDKROOT}" + ;; + *.xib) + echo "ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile ${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .xib`.nib ${PODS_ROOT}/$1 --sdk ${SDKROOT}" + ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .xib`.nib" "${PODS_ROOT}/$1" --sdk "${SDKROOT}" + ;; + *.framework) + echo "mkdir -p ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" + mkdir -p "${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" + echo "rsync -av ${PODS_ROOT}/$1 ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" + rsync -av "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" + ;; + *.xcdatamodel) + echo "xcrun momc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1"`.mom\"" + xcrun momc "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcdatamodel`.mom" + ;; + *.xcdatamodeld) + echo "xcrun momc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcdatamodeld`.momd\"" + xcrun momc "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcdatamodeld`.momd" + ;; + *.xcmappingmodel) + echo "xcrun mapc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcmappingmodel`.cdm\"" + xcrun mapc "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcmappingmodel`.cdm" + ;; + *.xcassets) + ABSOLUTE_XCASSET_FILE=$(realpath "${PODS_ROOT}/$1") + XCASSET_FILES+=("$ABSOLUTE_XCASSET_FILE") + ;; + /*) + echo "$1" + echo "$1" >> "$RESOURCES_TO_COPY" + ;; + *) + echo "${PODS_ROOT}/$1" + echo "${PODS_ROOT}/$1" >> "$RESOURCES_TO_COPY" + ;; + esac +} + +mkdir -p "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" +rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" +if [[ "${ACTION}" == "install" ]]; then + mkdir -p "${INSTALL_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" + rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${INSTALL_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" +fi +rm -f "$RESOURCES_TO_COPY" + +if [[ -n "${WRAPPER_EXTENSION}" ]] && [ "`xcrun --find actool`" ] && [ -n "$XCASSET_FILES" ] +then + case "${TARGETED_DEVICE_FAMILY}" in + 1,2) + TARGET_DEVICE_ARGS="--target-device ipad --target-device iphone" + ;; + 1) + TARGET_DEVICE_ARGS="--target-device iphone" + ;; + 2) + TARGET_DEVICE_ARGS="--target-device ipad" + ;; + *) + TARGET_DEVICE_ARGS="--target-device mac" + ;; + esac + + # Find all other xcassets (this unfortunately includes those of path pods and other targets). + OTHER_XCASSETS=$(find "$PWD" -iname "*.xcassets" -type d) + while read line; do + if [[ $line != "`realpath $PODS_ROOT`*" ]]; then + XCASSET_FILES+=("$line") + fi + done <<<"$OTHER_XCASSETS" + + printf "%s\0" "${XCASSET_FILES[@]}" | xargs -0 xcrun actool --output-format human-readable-text --notices --warnings --platform "${PLATFORM_NAME}" --minimum-deployment-target "${IPHONEOS_DEPLOYMENT_TARGET}" ${TARGET_DEVICE_ARGS} --compress-pngs --compile "${BUILT_PRODUCTS_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" +fi diff --git a/TalkinToTheNet/Pods/Target Support Files/Pods/Pods.debug.xcconfig b/TalkinToTheNet/Pods/Target Support Files/Pods/Pods.debug.xcconfig new file mode 100644 index 0000000..81b4481 --- /dev/null +++ b/TalkinToTheNet/Pods/Target Support Files/Pods/Pods.debug.xcconfig @@ -0,0 +1,5 @@ +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/SBJson" +OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/SBJson" +OTHER_LDFLAGS = $(inherited) -ObjC -l"SBJson" +PODS_ROOT = ${SRCROOT}/Pods \ No newline at end of file diff --git a/TalkinToTheNet/Pods/Target Support Files/Pods/Pods.release.xcconfig b/TalkinToTheNet/Pods/Target Support Files/Pods/Pods.release.xcconfig new file mode 100644 index 0000000..81b4481 --- /dev/null +++ b/TalkinToTheNet/Pods/Target Support Files/Pods/Pods.release.xcconfig @@ -0,0 +1,5 @@ +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/SBJson" +OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/SBJson" +OTHER_LDFLAGS = $(inherited) -ObjC -l"SBJson" +PODS_ROOT = ${SRCROOT}/Pods \ No newline at end of file diff --git a/TalkinToTheNet/Pods/Target Support Files/SBJson/SBJson-Private.xcconfig b/TalkinToTheNet/Pods/Target Support Files/SBJson/SBJson-Private.xcconfig new file mode 100644 index 0000000..4ba8279 --- /dev/null +++ b/TalkinToTheNet/Pods/Target Support Files/SBJson/SBJson-Private.xcconfig @@ -0,0 +1,5 @@ +#include "SBJson.xcconfig" +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Private/SBJson" "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/SBJson" +PODS_ROOT = ${SRCROOT} +SKIP_INSTALL = YES \ No newline at end of file diff --git a/TalkinToTheNet/Pods/Target Support Files/SBJson/SBJson-dummy.m b/TalkinToTheNet/Pods/Target Support Files/SBJson/SBJson-dummy.m new file mode 100644 index 0000000..cf3b36d --- /dev/null +++ b/TalkinToTheNet/Pods/Target Support Files/SBJson/SBJson-dummy.m @@ -0,0 +1,5 @@ +#import +@interface PodsDummy_SBJson : NSObject +@end +@implementation PodsDummy_SBJson +@end diff --git a/TalkinToTheNet/Pods/Target Support Files/SBJson/SBJson-prefix.pch b/TalkinToTheNet/Pods/Target Support Files/SBJson/SBJson-prefix.pch new file mode 100644 index 0000000..aa992a4 --- /dev/null +++ b/TalkinToTheNet/Pods/Target Support Files/SBJson/SBJson-prefix.pch @@ -0,0 +1,4 @@ +#ifdef __OBJC__ +#import +#endif + diff --git a/TalkinToTheNet/Pods/Target Support Files/SBJson/SBJson.xcconfig b/TalkinToTheNet/Pods/Target Support Files/SBJson/SBJson.xcconfig new file mode 100644 index 0000000..e69de29 diff --git a/TalkinToTheNet/TalkinToTheNet.xcodeproj/project.pbxproj b/TalkinToTheNet/TalkinToTheNet.xcodeproj/project.pbxproj deleted file mode 100644 index ee35a70..0000000 --- a/TalkinToTheNet/TalkinToTheNet.xcodeproj/project.pbxproj +++ /dev/null @@ -1,307 +0,0 @@ -// !$*UTF8*$! -{ - archiveVersion = 1; - classes = { - }; - objectVersion = 46; - objects = { - -/* Begin PBXBuildFile section */ - 8D7DCD4B1BAF859400A92AD2 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 8D7DCD4A1BAF859400A92AD2 /* main.m */; }; - 8D7DCD4E1BAF859400A92AD2 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 8D7DCD4D1BAF859400A92AD2 /* AppDelegate.m */; }; - 8D7DCD511BAF859400A92AD2 /* ViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 8D7DCD501BAF859400A92AD2 /* ViewController.m */; }; - 8D7DCD541BAF859400A92AD2 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 8D7DCD521BAF859400A92AD2 /* Main.storyboard */; }; - 8D7DCD561BAF859400A92AD2 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 8D7DCD551BAF859400A92AD2 /* Assets.xcassets */; }; - 8D7DCD591BAF859400A92AD2 /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 8D7DCD571BAF859400A92AD2 /* LaunchScreen.storyboard */; }; -/* End PBXBuildFile section */ - -/* Begin PBXFileReference section */ - 8D7DCD461BAF859400A92AD2 /* TalkinToTheNet.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = TalkinToTheNet.app; sourceTree = BUILT_PRODUCTS_DIR; }; - 8D7DCD4A1BAF859400A92AD2 /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; - 8D7DCD4C1BAF859400A92AD2 /* AppDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = ""; }; - 8D7DCD4D1BAF859400A92AD2 /* AppDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = ""; }; - 8D7DCD4F1BAF859400A92AD2 /* ViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ViewController.h; sourceTree = ""; }; - 8D7DCD501BAF859400A92AD2 /* ViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ViewController.m; sourceTree = ""; }; - 8D7DCD531BAF859400A92AD2 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; }; - 8D7DCD551BAF859400A92AD2 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; - 8D7DCD581BAF859400A92AD2 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; - 8D7DCD5A1BAF859400A92AD2 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; -/* End PBXFileReference section */ - -/* Begin PBXFrameworksBuildPhase section */ - 8D7DCD431BAF859400A92AD2 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXFrameworksBuildPhase section */ - -/* Begin PBXGroup section */ - 8D7DCD3D1BAF859400A92AD2 = { - isa = PBXGroup; - children = ( - 8D7DCD481BAF859400A92AD2 /* TalkinToTheNet */, - 8D7DCD471BAF859400A92AD2 /* Products */, - ); - sourceTree = ""; - }; - 8D7DCD471BAF859400A92AD2 /* Products */ = { - isa = PBXGroup; - children = ( - 8D7DCD461BAF859400A92AD2 /* TalkinToTheNet.app */, - ); - name = Products; - sourceTree = ""; - }; - 8D7DCD481BAF859400A92AD2 /* TalkinToTheNet */ = { - isa = PBXGroup; - children = ( - 8D7DCD4C1BAF859400A92AD2 /* AppDelegate.h */, - 8D7DCD4D1BAF859400A92AD2 /* AppDelegate.m */, - 8D7DCD4F1BAF859400A92AD2 /* ViewController.h */, - 8D7DCD501BAF859400A92AD2 /* ViewController.m */, - 8D7DCD521BAF859400A92AD2 /* Main.storyboard */, - 8D7DCD551BAF859400A92AD2 /* Assets.xcassets */, - 8D7DCD571BAF859400A92AD2 /* LaunchScreen.storyboard */, - 8D7DCD5A1BAF859400A92AD2 /* Info.plist */, - 8D7DCD491BAF859400A92AD2 /* Supporting Files */, - ); - path = TalkinToTheNet; - sourceTree = ""; - }; - 8D7DCD491BAF859400A92AD2 /* Supporting Files */ = { - isa = PBXGroup; - children = ( - 8D7DCD4A1BAF859400A92AD2 /* main.m */, - ); - name = "Supporting Files"; - sourceTree = ""; - }; -/* End PBXGroup section */ - -/* Begin PBXNativeTarget section */ - 8D7DCD451BAF859400A92AD2 /* TalkinToTheNet */ = { - isa = PBXNativeTarget; - buildConfigurationList = 8D7DCD5D1BAF859400A92AD2 /* Build configuration list for PBXNativeTarget "TalkinToTheNet" */; - buildPhases = ( - 8D7DCD421BAF859400A92AD2 /* Sources */, - 8D7DCD431BAF859400A92AD2 /* Frameworks */, - 8D7DCD441BAF859400A92AD2 /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = TalkinToTheNet; - productName = TalkinToTheNet; - productReference = 8D7DCD461BAF859400A92AD2 /* TalkinToTheNet.app */; - productType = "com.apple.product-type.application"; - }; -/* End PBXNativeTarget section */ - -/* Begin PBXProject section */ - 8D7DCD3E1BAF859400A92AD2 /* Project object */ = { - isa = PBXProject; - attributes = { - LastUpgradeCheck = 0700; - ORGANIZATIONNAME = "Mike Kavouras"; - TargetAttributes = { - 8D7DCD451BAF859400A92AD2 = { - CreatedOnToolsVersion = 7.0; - }; - }; - }; - buildConfigurationList = 8D7DCD411BAF859400A92AD2 /* Build configuration list for PBXProject "TalkinToTheNet" */; - compatibilityVersion = "Xcode 3.2"; - developmentRegion = English; - hasScannedForEncodings = 0; - knownRegions = ( - en, - Base, - ); - mainGroup = 8D7DCD3D1BAF859400A92AD2; - productRefGroup = 8D7DCD471BAF859400A92AD2 /* Products */; - projectDirPath = ""; - projectRoot = ""; - targets = ( - 8D7DCD451BAF859400A92AD2 /* TalkinToTheNet */, - ); - }; -/* End PBXProject section */ - -/* Begin PBXResourcesBuildPhase section */ - 8D7DCD441BAF859400A92AD2 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 8D7DCD591BAF859400A92AD2 /* LaunchScreen.storyboard in Resources */, - 8D7DCD561BAF859400A92AD2 /* Assets.xcassets in Resources */, - 8D7DCD541BAF859400A92AD2 /* Main.storyboard in Resources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXResourcesBuildPhase section */ - -/* Begin PBXSourcesBuildPhase section */ - 8D7DCD421BAF859400A92AD2 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 8D7DCD511BAF859400A92AD2 /* ViewController.m in Sources */, - 8D7DCD4E1BAF859400A92AD2 /* AppDelegate.m in Sources */, - 8D7DCD4B1BAF859400A92AD2 /* main.m in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXSourcesBuildPhase section */ - -/* Begin PBXVariantGroup section */ - 8D7DCD521BAF859400A92AD2 /* Main.storyboard */ = { - isa = PBXVariantGroup; - children = ( - 8D7DCD531BAF859400A92AD2 /* Base */, - ); - name = Main.storyboard; - sourceTree = ""; - }; - 8D7DCD571BAF859400A92AD2 /* LaunchScreen.storyboard */ = { - isa = PBXVariantGroup; - children = ( - 8D7DCD581BAF859400A92AD2 /* Base */, - ); - name = LaunchScreen.storyboard; - sourceTree = ""; - }; -/* End PBXVariantGroup section */ - -/* Begin XCBuildConfiguration section */ - 8D7DCD5B1BAF859400A92AD2 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = dwarf; - ENABLE_STRICT_OBJC_MSGSEND = YES; - ENABLE_TESTABILITY = YES; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_DYNAMIC_NO_PIC = NO; - GCC_NO_COMMON_BLOCKS = YES; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 9.0; - MTL_ENABLE_DEBUG_INFO = YES; - ONLY_ACTIVE_ARCH = YES; - SDKROOT = iphoneos; - }; - name = Debug; - }; - 8D7DCD5C1BAF859400A92AD2 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 9.0; - MTL_ENABLE_DEBUG_INFO = NO; - SDKROOT = iphoneos; - VALIDATE_PRODUCT = YES; - }; - name = Release; - }; - 8D7DCD5E1BAF859400A92AD2 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - INFOPLIST_FILE = TalkinToTheNet/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 8.4; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = com.mikekavouras.TalkinToTheNet; - PRODUCT_NAME = "$(TARGET_NAME)"; - }; - name = Debug; - }; - 8D7DCD5F1BAF859400A92AD2 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - INFOPLIST_FILE = TalkinToTheNet/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 8.4; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = com.mikekavouras.TalkinToTheNet; - PRODUCT_NAME = "$(TARGET_NAME)"; - }; - name = Release; - }; -/* End XCBuildConfiguration section */ - -/* Begin XCConfigurationList section */ - 8D7DCD411BAF859400A92AD2 /* Build configuration list for PBXProject "TalkinToTheNet" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 8D7DCD5B1BAF859400A92AD2 /* Debug */, - 8D7DCD5C1BAF859400A92AD2 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 8D7DCD5D1BAF859400A92AD2 /* Build configuration list for PBXNativeTarget "TalkinToTheNet" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 8D7DCD5E1BAF859400A92AD2 /* Debug */, - 8D7DCD5F1BAF859400A92AD2 /* Release */, - ); - defaultConfigurationIsVisible = 0; - }; -/* End XCConfigurationList section */ - }; - rootObject = 8D7DCD3E1BAF859400A92AD2 /* Project object */; -} diff --git a/TalkinToTheNet/TalkinToTheNet/ViewController.h b/TalkinToTheNet/TalkinToTheNet/ViewController.h deleted file mode 100644 index 8113a85..0000000 --- a/TalkinToTheNet/TalkinToTheNet/ViewController.h +++ /dev/null @@ -1,15 +0,0 @@ -// -// ViewController.h -// TalkinToTheNet -// -// Created by Michael Kavouras on 9/20/15. -// Copyright © 2015 Mike Kavouras. All rights reserved. -// - -#import - -@interface ViewController : UIViewController - - -@end - diff --git a/TalkinToTheNet/TalkinToTheNet/ViewController.m b/TalkinToTheNet/TalkinToTheNet/ViewController.m deleted file mode 100644 index cbefa29..0000000 --- a/TalkinToTheNet/TalkinToTheNet/ViewController.m +++ /dev/null @@ -1,27 +0,0 @@ -// -// ViewController.m -// TalkinToTheNet -// -// Created by Michael Kavouras on 9/20/15. -// Copyright © 2015 Mike Kavouras. All rights reserved. -// - -#import "ViewController.h" - -@interface ViewController () - -@end - -@implementation ViewController - -- (void)viewDidLoad { - [super viewDidLoad]; - // Do any additional setup after loading the view, typically from a nib. -} - -- (void)didReceiveMemoryWarning { - [super didReceiveMemoryWarning]; - // Dispose of any resources that can be recreated. -} - -@end