diff --git a/.swiftpm/xcode/package.xcworkspace/contents.xcworkspacedata b/.swiftpm/xcode/package.xcworkspace/contents.xcworkspacedata
new file mode 100644
index 0000000..919434a
--- /dev/null
+++ b/.swiftpm/xcode/package.xcworkspace/contents.xcworkspacedata
@@ -0,0 +1,7 @@
+
+
+
+
+
diff --git a/.travis.yml b/.travis.yml
index 46ffccd..682c5c4 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -1,15 +1,15 @@
language: objective-c
-osx_image: xcode10.1
-xcode_sdk: iphonesimulator10.0
+osx_image: xcode11
+xcode_sdk: iphonesimulator11.0.1
xcode_project: Validator.xcodeproj
xcode_scheme: Validator
before_install:
- gem install cocoapods -v '0.32.1'
- - gem install xcpretty --no-rdoc --no-ri --no-document --quiet
+ - gem install xcpretty --no-document --quiet
script:
- - xcodebuild clean build test -project Validator.xcodeproj -scheme Validator -sdk iphonesimulator -destination "platform=iOS Simulator,OS=10.0,name=iPhone 6" -enableCodeCoverage YES CODE_SIGNING_REQUIRED=NO | xcpretty
+ - xcodebuild clean build test -project Validator.xcodeproj -scheme Validator -sdk iphonesimulator -destination "platform=iOS Simulator,OS=11.0.1,name=iPhone 6" -enableCodeCoverage YES CODE_SIGNING_REQUIRED=NO | xcpretty
- pod lib lint
after_success:
diff --git a/Package.swift b/Package.swift
new file mode 100644
index 0000000..ce8acbf
--- /dev/null
+++ b/Package.swift
@@ -0,0 +1,29 @@
+// swift-tools-version:5.2
+// The swift-tools-version declares the minimum version of Swift required to build this package.
+
+import PackageDescription
+
+let package = Package(
+ name: "SwiftValidator",
+ platforms: [.iOS(.v8)],
+ products: [
+ // Products define the executables and libraries produced by a package, and make them visible to other packages.
+ .library(
+ name: "SwiftValidator",
+ targets: ["SwiftValidator"]),
+ ],
+ dependencies: [
+ // Dependencies declare other packages that this package depends on.
+ // .package(url: /* package url */, from: "1.0.0"),
+ ],
+ targets: [
+ // Targets are the basic building blocks of a package. A target can define a module or a test suite.
+ // Targets can depend on other targets in this package, and on products in packages which this package depends on.
+ .target(
+ name: "SwiftValidator",
+ dependencies: []),
+ .testTarget(
+ name: "SwiftValidatorTests",
+ dependencies: ["SwiftValidator"]),
+ ]
+)
diff --git a/README.md b/README.md
index 79e3c7b..a8e4c91 100644
--- a/README.md
+++ b/README.md
@@ -56,6 +56,12 @@ If you are using Carthage you will need to add this to your `Cartfile`
github "jpotts18/SwiftValidator"
```
+If you are using Swift Package Manager you need to add this to your dependencies.
+
+```bash
+https://github.com/SwiftValidatorCommunity/SwiftValidator
+```
+
## Usage
You can now import SwiftValidator framework into your files.
diff --git a/SwiftValidator/Core/Validatable.swift b/Sources/SwiftValidator/Core/Validatable.swift
similarity index 96%
rename from SwiftValidator/Core/Validatable.swift
rename to Sources/SwiftValidator/Core/Validatable.swift
index 4778f3a..c9fef2a 100644
--- a/SwiftValidator/Core/Validatable.swift
+++ b/Sources/SwiftValidator/Core/Validatable.swift
@@ -6,7 +6,7 @@
// Copyright © 2016 jpotts18. All rights reserved.
//
-import Foundation
+import UIKit
public typealias ValidatableField = AnyObject & Validatable
diff --git a/SwiftValidator/Core/ValidationDelegate.swift b/Sources/SwiftValidator/Core/ValidationDelegate.swift
similarity index 100%
rename from SwiftValidator/Core/ValidationDelegate.swift
rename to Sources/SwiftValidator/Core/ValidationDelegate.swift
diff --git a/SwiftValidator/Core/ValidationError.swift b/Sources/SwiftValidator/Core/ValidationError.swift
similarity index 100%
rename from SwiftValidator/Core/ValidationError.swift
rename to Sources/SwiftValidator/Core/ValidationError.swift
diff --git a/SwiftValidator/Core/Validator.swift b/Sources/SwiftValidator/Core/Validator.swift
similarity index 100%
rename from SwiftValidator/Core/Validator.swift
rename to Sources/SwiftValidator/Core/Validator.swift
diff --git a/SwiftValidator/Core/ValidatorDictionary.swift b/Sources/SwiftValidator/Core/ValidatorDictionary.swift
similarity index 100%
rename from SwiftValidator/Core/ValidatorDictionary.swift
rename to Sources/SwiftValidator/Core/ValidatorDictionary.swift
diff --git a/SwiftValidator/Info.plist b/Sources/SwiftValidator/Info.plist
similarity index 100%
rename from SwiftValidator/Info.plist
rename to Sources/SwiftValidator/Info.plist
diff --git a/SwiftValidator/Rules/AlphaNumericRule.swift b/Sources/SwiftValidator/Rules/AlphaNumericRule.swift
similarity index 100%
rename from SwiftValidator/Rules/AlphaNumericRule.swift
rename to Sources/SwiftValidator/Rules/AlphaNumericRule.swift
diff --git a/SwiftValidator/Rules/AlphaRule.swift b/Sources/SwiftValidator/Rules/AlphaRule.swift
similarity index 100%
rename from SwiftValidator/Rules/AlphaRule.swift
rename to Sources/SwiftValidator/Rules/AlphaRule.swift
diff --git a/SwiftValidator/Rules/CardExpiryMonthRule.swift b/Sources/SwiftValidator/Rules/CardExpiryMonthRule.swift
similarity index 100%
rename from SwiftValidator/Rules/CardExpiryMonthRule.swift
rename to Sources/SwiftValidator/Rules/CardExpiryMonthRule.swift
diff --git a/SwiftValidator/Rules/CardExpiryYearRule.swift b/Sources/SwiftValidator/Rules/CardExpiryYearRule.swift
similarity index 100%
rename from SwiftValidator/Rules/CardExpiryYearRule.swift
rename to Sources/SwiftValidator/Rules/CardExpiryYearRule.swift
diff --git a/SwiftValidator/Rules/CharacterSetRule.swift b/Sources/SwiftValidator/Rules/CharacterSetRule.swift
similarity index 100%
rename from SwiftValidator/Rules/CharacterSetRule.swift
rename to Sources/SwiftValidator/Rules/CharacterSetRule.swift
diff --git a/SwiftValidator/Rules/ConfirmRule.swift b/Sources/SwiftValidator/Rules/ConfirmRule.swift
similarity index 100%
rename from SwiftValidator/Rules/ConfirmRule.swift
rename to Sources/SwiftValidator/Rules/ConfirmRule.swift
diff --git a/SwiftValidator/Rules/EmailRule.swift b/Sources/SwiftValidator/Rules/EmailRule.swift
similarity index 100%
rename from SwiftValidator/Rules/EmailRule.swift
rename to Sources/SwiftValidator/Rules/EmailRule.swift
diff --git a/SwiftValidator/Rules/ExactLengthRule.swift b/Sources/SwiftValidator/Rules/ExactLengthRule.swift
similarity index 100%
rename from SwiftValidator/Rules/ExactLengthRule.swift
rename to Sources/SwiftValidator/Rules/ExactLengthRule.swift
diff --git a/SwiftValidator/Rules/FloatRule.swift b/Sources/SwiftValidator/Rules/FloatRule.swift
similarity index 100%
rename from SwiftValidator/Rules/FloatRule.swift
rename to Sources/SwiftValidator/Rules/FloatRule.swift
diff --git a/SwiftValidator/Rules/FullNameRule.swift b/Sources/SwiftValidator/Rules/FullNameRule.swift
similarity index 100%
rename from SwiftValidator/Rules/FullNameRule.swift
rename to Sources/SwiftValidator/Rules/FullNameRule.swift
diff --git a/SwiftValidator/Rules/HexColorRule.swift b/Sources/SwiftValidator/Rules/HexColorRule.swift
similarity index 100%
rename from SwiftValidator/Rules/HexColorRule.swift
rename to Sources/SwiftValidator/Rules/HexColorRule.swift
diff --git a/SwiftValidator/Rules/IPV4Rule.swift b/Sources/SwiftValidator/Rules/IPV4Rule.swift
similarity index 100%
rename from SwiftValidator/Rules/IPV4Rule.swift
rename to Sources/SwiftValidator/Rules/IPV4Rule.swift
diff --git a/SwiftValidator/Rules/ISBNRule.swift b/Sources/SwiftValidator/Rules/ISBNRule.swift
similarity index 100%
rename from SwiftValidator/Rules/ISBNRule.swift
rename to Sources/SwiftValidator/Rules/ISBNRule.swift
diff --git a/SwiftValidator/Rules/MaxLengthRule.swift b/Sources/SwiftValidator/Rules/MaxLengthRule.swift
similarity index 100%
rename from SwiftValidator/Rules/MaxLengthRule.swift
rename to Sources/SwiftValidator/Rules/MaxLengthRule.swift
diff --git a/SwiftValidator/Rules/MinLengthRule.swift b/Sources/SwiftValidator/Rules/MinLengthRule.swift
similarity index 100%
rename from SwiftValidator/Rules/MinLengthRule.swift
rename to Sources/SwiftValidator/Rules/MinLengthRule.swift
diff --git a/SwiftValidator/Rules/PasswordRule.swift b/Sources/SwiftValidator/Rules/PasswordRule.swift
similarity index 100%
rename from SwiftValidator/Rules/PasswordRule.swift
rename to Sources/SwiftValidator/Rules/PasswordRule.swift
diff --git a/SwiftValidator/Rules/PhoneNumberRule.swift b/Sources/SwiftValidator/Rules/PhoneNumberRule.swift
similarity index 100%
rename from SwiftValidator/Rules/PhoneNumberRule.swift
rename to Sources/SwiftValidator/Rules/PhoneNumberRule.swift
diff --git a/SwiftValidator/Rules/RegexRule.swift b/Sources/SwiftValidator/Rules/RegexRule.swift
similarity index 100%
rename from SwiftValidator/Rules/RegexRule.swift
rename to Sources/SwiftValidator/Rules/RegexRule.swift
diff --git a/SwiftValidator/Rules/RequiredRule.swift b/Sources/SwiftValidator/Rules/RequiredRule.swift
similarity index 100%
rename from SwiftValidator/Rules/RequiredRule.swift
rename to Sources/SwiftValidator/Rules/RequiredRule.swift
diff --git a/SwiftValidator/Rules/Rule.swift b/Sources/SwiftValidator/Rules/Rule.swift
similarity index 100%
rename from SwiftValidator/Rules/Rule.swift
rename to Sources/SwiftValidator/Rules/Rule.swift
diff --git a/SwiftValidator/Rules/ValidationRule.swift b/Sources/SwiftValidator/Rules/ValidationRule.swift
similarity index 100%
rename from SwiftValidator/Rules/ValidationRule.swift
rename to Sources/SwiftValidator/Rules/ValidationRule.swift
diff --git a/SwiftValidator/Rules/ZipCodeRule.swift b/Sources/SwiftValidator/Rules/ZipCodeRule.swift
similarity index 100%
rename from SwiftValidator/Rules/ZipCodeRule.swift
rename to Sources/SwiftValidator/Rules/ZipCodeRule.swift
diff --git a/SwiftValidator/SwiftValidator.h b/Sources/SwiftValidator/SwiftValidator.h
similarity index 95%
rename from SwiftValidator/SwiftValidator.h
rename to Sources/SwiftValidator/SwiftValidator.h
index ad88bfb..a2fb612 100644
--- a/SwiftValidator/SwiftValidator.h
+++ b/Sources/SwiftValidator/SwiftValidator.h
@@ -6,7 +6,7 @@
// Copyright (c) 2015 jpotts18. All rights reserved.
//
-#import
+@import Foundation;
//! Project version number for SwiftValidator.
FOUNDATION_EXPORT double SwiftValidatorVersionNumber;
diff --git a/Sources/SwiftValidator/SwiftValidator.swift b/Sources/SwiftValidator/SwiftValidator.swift
new file mode 100644
index 0000000..7c3ce7f
--- /dev/null
+++ b/Sources/SwiftValidator/SwiftValidator.swift
@@ -0,0 +1 @@
+let version = "5.1.0"
diff --git a/SwiftValidator.podspec b/SwiftValidator.podspec
index e426329..1cf69b6 100644
--- a/SwiftValidator.podspec
+++ b/SwiftValidator.podspec
@@ -1,7 +1,7 @@
Pod::Spec.new do |s|
s.name = "SwiftValidator"
- s.version = "4.0.0"
- s.swift_version = "4.2"
+ s.version = "5.1.0"
+ s.swift_version = "5.3"
s.summary = "A UITextField Validation library for Swift"
s.homepage = "https://github.com/jpotts18/SwiftValidator"
s.screenshots = "https://raw.githubusercontent.com/jpotts18/SwiftValidator/master/swift-validator-v2.gif"
@@ -11,7 +11,7 @@ Pod::Spec.new do |s|
s.platform = :ios
s.ios.deployment_target = '8.0'
s.source = { :git => "https://github.com/jpotts18/SwiftValidator.git", :tag => "4.0.0" }
- s.source_files = "SwiftValidator/**/*.swift"
+ s.source_files = "Sources/**/*.swift"
s.exclude_files = "Validator/AppDelegate.swift"
s.frameworks = ['Foundation', 'UIKit']
s.requires_arc = true
diff --git a/Tests/SwiftValidatorTests-Bridging-Header.h b/Tests/SwiftValidatorTests-Bridging-Header.h
new file mode 100644
index 0000000..1b2cb5d
--- /dev/null
+++ b/Tests/SwiftValidatorTests-Bridging-Header.h
@@ -0,0 +1,4 @@
+//
+// Use this file to import your target's public headers that you would like to expose to Swift.
+//
+
diff --git a/SwiftValidatorTests/Info.plist b/Tests/SwiftValidatorTests/Info.plist
similarity index 100%
rename from SwiftValidatorTests/Info.plist
rename to Tests/SwiftValidatorTests/Info.plist
diff --git a/SwiftValidatorTests/SwiftValidatorTests.swift b/Tests/SwiftValidatorTests/SwiftValidatorTests.swift
similarity index 98%
rename from SwiftValidatorTests/SwiftValidatorTests.swift
rename to Tests/SwiftValidatorTests/SwiftValidatorTests.swift
index 4672e21..816310d 100644
--- a/SwiftValidatorTests/SwiftValidatorTests.swift
+++ b/Tests/SwiftValidatorTests/SwiftValidatorTests.swift
@@ -8,8 +8,6 @@
import UIKit
import XCTest
-import Validator // example app
-import SwiftValidator // framework
class SwiftValidatorTests: XCTestCase {
@@ -34,7 +32,7 @@ class SwiftValidatorTests: XCTestCase {
let VALID_CARD_EXPIRY_MONTH = "10"
let INVALID_CARD_EXPIRY_MONTH = "13"
- let VALID_CARD_EXPIRY_YEAR = "2018"
+ let VALID_CARD_EXPIRY_YEAR = "2021"
let INVALID_CARD_EXPIRY_YEAR = "2016"
let LEN_3 = "hey"
@@ -407,7 +405,7 @@ class SwiftValidatorTests: XCTestCase {
}
REGISTER_TXT_FIELD.text = INVALID_EMAIL
REGISTER_VALIDATOR.validateField(REGISTER_TXT_FIELD) { error in
- XCTAssert(error?.errorMessage.characters.count ?? 0 > 0, "Should state 'invalid email'")
+ XCTAssert(error?.errorMessage.count ?? 0 > 0, "Should state 'invalid email'")
}
}
diff --git a/Tests/SwiftValidatorTests/XCTestManifests.swift b/Tests/SwiftValidatorTests/XCTestManifests.swift
new file mode 100644
index 0000000..03f42c2
--- /dev/null
+++ b/Tests/SwiftValidatorTests/XCTestManifests.swift
@@ -0,0 +1,9 @@
+import XCTest
+
+#if !canImport(ObjectiveC)
+public func allTests() -> [XCTestCaseEntry] {
+ return [
+ testCase(SwiftValidatorTests.allTests),
+ ]
+}
+#endif
diff --git a/Validator.xcodeproj/project.pbxproj b/Validator.xcodeproj/project.pbxproj
index b160122..4879765 100644
--- a/Validator.xcodeproj/project.pbxproj
+++ b/Validator.xcodeproj/project.pbxproj
@@ -7,36 +7,65 @@
objects = {
/* Begin PBXBuildFile section */
- 62C1821D1C6312F5003788E7 /* ExactLengthRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 62C1821C1C6312F5003788E7 /* ExactLengthRule.swift */; };
- 62D9B2561C7C0B2A00BAFCE3 /* ValidationDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 62D9B2551C7C0B2A00BAFCE3 /* ValidationDelegate.swift */; };
- 7CC1E4CF1C636B4500AF013C /* AlphaRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7CC1E4CE1C636B4500AF013C /* AlphaRule.swift */; };
- 7CC1E4D11C637A7700AF013C /* AlphaNumericRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7CC1E4D01C637A7700AF013C /* AlphaNumericRule.swift */; };
- 7CC1E4D31C637ABC00AF013C /* CharacterSetRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7CC1E4D21C637ABC00AF013C /* CharacterSetRule.swift */; };
- 7CC1E4D51C637C8500AF013C /* IPV4Rule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7CC1E4D41C637C8500AF013C /* IPV4Rule.swift */; };
- 7CC1E4D71C637F6E00AF013C /* ISBNRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7CC1E4D61C637F6E00AF013C /* ISBNRule.swift */; };
- 7CC1E4DB1C63BFA600AF013C /* HexColorRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7CC1E4DA1C63BFA600AF013C /* HexColorRule.swift */; };
- C87F606A1E2B678B00EB8429 /* CardExpiryMonthRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = C87F60691E2B678B00EB8429 /* CardExpiryMonthRule.swift */; };
- C87F606C1E2B68C900EB8429 /* CardExpiryYearRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = C87F606B1E2B68C900EB8429 /* CardExpiryYearRule.swift */; };
- FB465CB81B9884F400398388 /* SwiftValidator.h in Headers */ = {isa = PBXBuildFile; fileRef = FB465CB71B9884F400398388 /* SwiftValidator.h */; settings = {ATTRIBUTES = (Public, ); }; };
+ 2858C0CE2517C07D0087C315 /* ValidatorDictionary.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288B8B8B2517107100114B96 /* ValidatorDictionary.swift */; };
+ 2858C0CF2517C07D0087C315 /* Validatable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288B8B8C2517107100114B96 /* Validatable.swift */; };
+ 2858C0D02517C07D0087C315 /* ValidationDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288B8B892517107100114B96 /* ValidationDelegate.swift */; };
+ 2858C0D12517C07D0087C315 /* Validator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288B8B8D2517107100114B96 /* Validator.swift */; };
+ 2858C0D22517C07D0087C315 /* ValidationError.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288B8B8A2517107100114B96 /* ValidationError.swift */; };
+ 2858C0D52517C0880087C315 /* ZipCodeRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288B8B2A25170F4C00114B96 /* ZipCodeRule.swift */; };
+ 2858C0D62517C0880087C315 /* AlphaNumericRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288B8B2D25170F4C00114B96 /* AlphaNumericRule.swift */; };
+ 2858C0D72517C0880087C315 /* EmailRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288B8B2C25170F4C00114B96 /* EmailRule.swift */; };
+ 2858C0D82517C0880087C315 /* Rule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288B8B2F25170F4C00114B96 /* Rule.swift */; };
+ 2858C0D92517C0880087C315 /* CharacterSetRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288B8B2125170F4C00114B96 /* CharacterSetRule.swift */; };
+ 2858C0DA2517C0880087C315 /* CardExpiryMonthRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288B8B2825170F4C00114B96 /* CardExpiryMonthRule.swift */; };
+ 2858C0DB2517C0880087C315 /* RegexRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288B8B2925170F4C00114B96 /* RegexRule.swift */; };
+ 2858C0DC2517C0880087C315 /* RequiredRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288B8B3025170F4C00114B96 /* RequiredRule.swift */; };
+ 2858C0DD2517C0880087C315 /* IPV4Rule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288B8B3125170F4C00114B96 /* IPV4Rule.swift */; };
+ 2858C0DE2517C0880087C315 /* AlphaRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288B8B3325170F4C00114B96 /* AlphaRule.swift */; };
+ 2858C0DF2517C0880087C315 /* CardExpiryYearRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288B8B2025170F4C00114B96 /* CardExpiryYearRule.swift */; };
+ 2858C0E02517C0880087C315 /* HexColorRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288B8B2B25170F4C00114B96 /* HexColorRule.swift */; };
+ 2858C0E12517C0880087C315 /* MinLengthRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288B8B2525170F4C00114B96 /* MinLengthRule.swift */; };
+ 2858C0E22517C0880087C315 /* ISBNRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288B8B3425170F4C00114B96 /* ISBNRule.swift */; };
+ 2858C0E32517C0880087C315 /* PasswordRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288B8B2225170F4C00114B96 /* PasswordRule.swift */; };
+ 2858C0E42517C0880087C315 /* ExactLengthRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288B8B2325170F4C00114B96 /* ExactLengthRule.swift */; };
+ 2858C0E52517C0880087C315 /* FloatRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288B8B2625170F4C00114B96 /* FloatRule.swift */; };
+ 2858C0E62517C0880087C315 /* PhoneNumberRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288B8B2E25170F4C00114B96 /* PhoneNumberRule.swift */; };
+ 2858C0E72517C0880087C315 /* ValidationRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288B8B3225170F4C00114B96 /* ValidationRule.swift */; };
+ 2858C0E82517C0880087C315 /* FullNameRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288B8B1F25170F4C00114B96 /* FullNameRule.swift */; };
+ 2858C0E92517C0880087C315 /* MaxLengthRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288B8B2725170F4C00114B96 /* MaxLengthRule.swift */; };
+ 2858C0EA2517C0880087C315 /* ConfirmRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288B8B2425170F4C00114B96 /* ConfirmRule.swift */; };
+ 288B8B5C2517100100114B96 /* FullNameRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288B8B1F25170F4C00114B96 /* FullNameRule.swift */; };
+ 288B8B602517100400114B96 /* CardExpiryYearRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288B8B2025170F4C00114B96 /* CardExpiryYearRule.swift */; };
+ 288B8B642517100B00114B96 /* ExactLengthRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288B8B2325170F4C00114B96 /* ExactLengthRule.swift */; };
+ 288B8B652517100B00114B96 /* FloatRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288B8B2625170F4C00114B96 /* FloatRule.swift */; };
+ 288B8B662517100B00114B96 /* ValidationRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288B8B3225170F4C00114B96 /* ValidationRule.swift */; };
+ 288B8B672517100B00114B96 /* EmailRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288B8B2C25170F4C00114B96 /* EmailRule.swift */; };
+ 288B8B682517100B00114B96 /* RegexRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288B8B2925170F4C00114B96 /* RegexRule.swift */; };
+ 288B8B692517100B00114B96 /* PasswordRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288B8B2225170F4C00114B96 /* PasswordRule.swift */; };
+ 288B8B6A2517100B00114B96 /* Rule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288B8B2F25170F4C00114B96 /* Rule.swift */; };
+ 288B8B6B2517100B00114B96 /* MaxLengthRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288B8B2725170F4C00114B96 /* MaxLengthRule.swift */; };
+ 288B8B6C2517100B00114B96 /* ZipCodeRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288B8B2A25170F4C00114B96 /* ZipCodeRule.swift */; };
+ 288B8B6D2517100B00114B96 /* AlphaNumericRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288B8B2D25170F4C00114B96 /* AlphaNumericRule.swift */; };
+ 288B8B6E2517100B00114B96 /* HexColorRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288B8B2B25170F4C00114B96 /* HexColorRule.swift */; };
+ 288B8B6F2517100B00114B96 /* ISBNRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288B8B3425170F4C00114B96 /* ISBNRule.swift */; };
+ 288B8B702517100B00114B96 /* MinLengthRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288B8B2525170F4C00114B96 /* MinLengthRule.swift */; };
+ 288B8B712517100B00114B96 /* CharacterSetRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288B8B2125170F4C00114B96 /* CharacterSetRule.swift */; };
+ 288B8B722517100B00114B96 /* IPV4Rule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288B8B3125170F4C00114B96 /* IPV4Rule.swift */; };
+ 288B8B732517100B00114B96 /* ConfirmRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288B8B2425170F4C00114B96 /* ConfirmRule.swift */; };
+ 288B8B742517100B00114B96 /* AlphaRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288B8B3325170F4C00114B96 /* AlphaRule.swift */; };
+ 288B8B752517100B00114B96 /* CardExpiryMonthRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288B8B2825170F4C00114B96 /* CardExpiryMonthRule.swift */; };
+ 288B8B762517100B00114B96 /* PhoneNumberRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288B8B2E25170F4C00114B96 /* PhoneNumberRule.swift */; };
+ 288B8B772517100B00114B96 /* RequiredRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288B8B3025170F4C00114B96 /* RequiredRule.swift */; };
+ 288B8B7C2517102900114B96 /* SwiftValidator.h in Headers */ = {isa = PBXBuildFile; fileRef = 288B8B7B2517102600114B96 /* SwiftValidator.h */; settings = {ATTRIBUTES = (Public, ); }; };
+ 288B8B812517102F00114B96 /* SwiftValidator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288B8B802517102F00114B96 /* SwiftValidator.swift */; };
+ 288B8B8E2517107100114B96 /* ValidationDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288B8B892517107100114B96 /* ValidationDelegate.swift */; };
+ 288B8B8F2517107100114B96 /* ValidationError.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288B8B8A2517107100114B96 /* ValidationError.swift */; };
+ 288B8B902517107100114B96 /* ValidatorDictionary.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288B8B8B2517107100114B96 /* ValidatorDictionary.swift */; };
+ 288B8B912517107100114B96 /* Validatable.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288B8B8C2517107100114B96 /* Validatable.swift */; };
+ 288B8B922517107100114B96 /* Validator.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288B8B8D2517107100114B96 /* Validator.swift */; };
+ 288B8BA42517112300114B96 /* SwiftValidatorTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288B8BA12517112200114B96 /* SwiftValidatorTests.swift */; };
+ 288B8BA62517112300114B96 /* XCTestManifests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 288B8BA32517112300114B96 /* XCTestManifests.swift */; };
FB465CBE1B9884F400398388 /* SwiftValidator.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FB465CB31B9884F400398388 /* SwiftValidator.framework */; };
- FB465CC71B9884F400398388 /* SwiftValidatorTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = FB465CC61B9884F400398388 /* SwiftValidatorTests.swift */; };
- FB465CF31B9889EA00398388 /* ConfirmRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = FB465CE31B9889EA00398388 /* ConfirmRule.swift */; };
- FB465CF41B9889EA00398388 /* EmailRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = FB465CE41B9889EA00398388 /* EmailRule.swift */; };
- FB465CF51B9889EA00398388 /* FloatRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = FB465CE51B9889EA00398388 /* FloatRule.swift */; };
- FB465CF61B9889EA00398388 /* FullNameRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = FB465CE61B9889EA00398388 /* FullNameRule.swift */; };
- FB465CF71B9889EA00398388 /* MaxLengthRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = FB465CE71B9889EA00398388 /* MaxLengthRule.swift */; };
- FB465CF81B9889EA00398388 /* MinLengthRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = FB465CE81B9889EA00398388 /* MinLengthRule.swift */; };
- FB465CF91B9889EA00398388 /* PasswordRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = FB465CE91B9889EA00398388 /* PasswordRule.swift */; };
- FB465CFA1B9889EA00398388 /* PhoneNumberRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = FB465CEA1B9889EA00398388 /* PhoneNumberRule.swift */; };
- FB465CFB1B9889EA00398388 /* RegexRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = FB465CEB1B9889EA00398388 /* RegexRule.swift */; };
- FB465CFC1B9889EA00398388 /* RequiredRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = FB465CEC1B9889EA00398388 /* RequiredRule.swift */; };
- FB465CFD1B9889EA00398388 /* Rule.swift in Sources */ = {isa = PBXBuildFile; fileRef = FB465CED1B9889EA00398388 /* Rule.swift */; };
- FB465CFE1B9889EA00398388 /* ValidationRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = FB465CEE1B9889EA00398388 /* ValidationRule.swift */; };
- FB465CFF1B9889EA00398388 /* ZipCodeRule.swift in Sources */ = {isa = PBXBuildFile; fileRef = FB465CEF1B9889EA00398388 /* ZipCodeRule.swift */; };
- FB465D001B9889EA00398388 /* ValidationError.swift in Sources */ = {isa = PBXBuildFile; fileRef = FB465CF11B9889EA00398388 /* ValidationError.swift */; };
- FB465D011B9889EA00398388 /* Validator.swift in Sources */ = {isa = PBXBuildFile; fileRef = FB465CF21B9889EA00398388 /* Validator.swift */; };
- FB51E5B01CD208B8004DE696 /* Validatable.swift in Sources */ = {isa = PBXBuildFile; fileRef = FB51E5AF1CD208B8004DE696 /* Validatable.swift */; };
- FBA963631CDA10130071F03E /* ValidatorDictionary.swift in Sources */ = {isa = PBXBuildFile; fileRef = FBA963621CDA10130071F03E /* ValidatorDictionary.swift */; };
/* End PBXBuildFile section */
/* Begin PBXContainerItemProxy section */
@@ -50,57 +79,52 @@
/* End PBXContainerItemProxy section */
/* Begin PBXFileReference section */
- 62C1821C1C6312F5003788E7 /* ExactLengthRule.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ExactLengthRule.swift; sourceTree = ""; };
+ 288B8AF0251709B400114B96 /* Package.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Package.swift; sourceTree = ""; };
+ 288B8B1D25170F4800114B96 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; };
+ 288B8B1F25170F4C00114B96 /* FullNameRule.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FullNameRule.swift; sourceTree = ""; };
+ 288B8B2025170F4C00114B96 /* CardExpiryYearRule.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CardExpiryYearRule.swift; sourceTree = ""; };
+ 288B8B2125170F4C00114B96 /* CharacterSetRule.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CharacterSetRule.swift; sourceTree = ""; };
+ 288B8B2225170F4C00114B96 /* PasswordRule.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PasswordRule.swift; sourceTree = ""; };
+ 288B8B2325170F4C00114B96 /* ExactLengthRule.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ExactLengthRule.swift; sourceTree = ""; };
+ 288B8B2425170F4C00114B96 /* ConfirmRule.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ConfirmRule.swift; sourceTree = ""; };
+ 288B8B2525170F4C00114B96 /* MinLengthRule.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MinLengthRule.swift; sourceTree = ""; };
+ 288B8B2625170F4C00114B96 /* FloatRule.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FloatRule.swift; sourceTree = ""; };
+ 288B8B2725170F4C00114B96 /* MaxLengthRule.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MaxLengthRule.swift; sourceTree = ""; };
+ 288B8B2825170F4C00114B96 /* CardExpiryMonthRule.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CardExpiryMonthRule.swift; sourceTree = ""; };
+ 288B8B2925170F4C00114B96 /* RegexRule.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RegexRule.swift; sourceTree = ""; };
+ 288B8B2A25170F4C00114B96 /* ZipCodeRule.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ZipCodeRule.swift; sourceTree = ""; };
+ 288B8B2B25170F4C00114B96 /* HexColorRule.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HexColorRule.swift; sourceTree = ""; };
+ 288B8B2C25170F4C00114B96 /* EmailRule.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EmailRule.swift; sourceTree = ""; };
+ 288B8B2D25170F4C00114B96 /* AlphaNumericRule.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AlphaNumericRule.swift; sourceTree = ""; };
+ 288B8B2E25170F4C00114B96 /* PhoneNumberRule.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PhoneNumberRule.swift; sourceTree = ""; };
+ 288B8B2F25170F4C00114B96 /* Rule.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Rule.swift; sourceTree = ""; };
+ 288B8B3025170F4C00114B96 /* RequiredRule.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RequiredRule.swift; sourceTree = ""; };
+ 288B8B3125170F4C00114B96 /* IPV4Rule.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = IPV4Rule.swift; sourceTree = ""; };
+ 288B8B3225170F4C00114B96 /* ValidationRule.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ValidationRule.swift; sourceTree = ""; };
+ 288B8B3325170F4C00114B96 /* AlphaRule.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AlphaRule.swift; sourceTree = ""; };
+ 288B8B3425170F4C00114B96 /* ISBNRule.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ISBNRule.swift; sourceTree = ""; };
+ 288B8B7B2517102600114B96 /* SwiftValidator.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = SwiftValidator.h; sourceTree = ""; };
+ 288B8B802517102F00114B96 /* SwiftValidator.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SwiftValidator.swift; sourceTree = ""; };
+ 288B8B892517107100114B96 /* ValidationDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ValidationDelegate.swift; sourceTree = ""; };
+ 288B8B8A2517107100114B96 /* ValidationError.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ValidationError.swift; sourceTree = ""; };
+ 288B8B8B2517107100114B96 /* ValidatorDictionary.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ValidatorDictionary.swift; sourceTree = ""; };
+ 288B8B8C2517107100114B96 /* Validatable.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Validatable.swift; sourceTree = ""; };
+ 288B8B8D2517107100114B96 /* Validator.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Validator.swift; sourceTree = ""; };
+ 288B8B982517110700114B96 /* SwiftValidatorTests-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "SwiftValidatorTests-Bridging-Header.h"; sourceTree = ""; };
+ 288B8BA12517112200114B96 /* SwiftValidatorTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = SwiftValidatorTests.swift; path = Tests/SwiftValidatorTests/SwiftValidatorTests.swift; sourceTree = SOURCE_ROOT; };
+ 288B8BA22517112200114B96 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = Info.plist; path = Tests/SwiftValidatorTests/Info.plist; sourceTree = SOURCE_ROOT; };
+ 288B8BA32517112300114B96 /* XCTestManifests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = XCTestManifests.swift; path = Tests/SwiftValidatorTests/XCTestManifests.swift; sourceTree = SOURCE_ROOT; };
62D1AE1B1A1E6D4400E4DFF8 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; };
62D1AE1C1A1E6D4400E4DFF8 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; };
62D1AE1E1A1E6D4400E4DFF8 /* ViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ViewController.swift; sourceTree = ""; };
62D1AE211A1E6D4400E4DFF8 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; };
62D1AE231A1E6D4400E4DFF8 /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Images.xcassets; sourceTree = ""; };
62D1AE261A1E6D4400E4DFF8 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/LaunchScreen.xib; sourceTree = ""; };
- 62D1AE2C1A1E6D4500E4DFF8 /* ValidatorTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = ValidatorTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
- 62D1AE311A1E6D4500E4DFF8 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; };
- 62D9B2551C7C0B2A00BAFCE3 /* ValidationDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ValidationDelegate.swift; sourceTree = ""; };
- 7CC1E4CE1C636B4500AF013C /* AlphaRule.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AlphaRule.swift; sourceTree = ""; };
- 7CC1E4D01C637A7700AF013C /* AlphaNumericRule.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AlphaNumericRule.swift; sourceTree = ""; };
- 7CC1E4D21C637ABC00AF013C /* CharacterSetRule.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CharacterSetRule.swift; sourceTree = ""; };
- 7CC1E4D41C637C8500AF013C /* IPV4Rule.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = IPV4Rule.swift; sourceTree = ""; };
- 7CC1E4D61C637F6E00AF013C /* ISBNRule.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ISBNRule.swift; sourceTree = ""; };
- 7CC1E4DA1C63BFA600AF013C /* HexColorRule.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = HexColorRule.swift; sourceTree = ""; };
- C87F60691E2B678B00EB8429 /* CardExpiryMonthRule.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CardExpiryMonthRule.swift; sourceTree = ""; };
- C87F606B1E2B68C900EB8429 /* CardExpiryYearRule.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CardExpiryYearRule.swift; sourceTree = ""; };
FB465CB31B9884F400398388 /* SwiftValidator.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = SwiftValidator.framework; sourceTree = BUILT_PRODUCTS_DIR; };
- FB465CB61B9884F400398388 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; };
- FB465CB71B9884F400398388 /* SwiftValidator.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = SwiftValidator.h; sourceTree = ""; };
FB465CBD1B9884F400398388 /* SwiftValidatorTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = SwiftValidatorTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
- FB465CC51B9884F400398388 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; };
- FB465CC61B9884F400398388 /* SwiftValidatorTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SwiftValidatorTests.swift; sourceTree = ""; };
- FB465CE31B9889EA00398388 /* ConfirmRule.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ConfirmRule.swift; sourceTree = ""; };
- FB465CE41B9889EA00398388 /* EmailRule.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = EmailRule.swift; sourceTree = ""; };
- FB465CE51B9889EA00398388 /* FloatRule.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = FloatRule.swift; sourceTree = ""; };
- FB465CE61B9889EA00398388 /* FullNameRule.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = FullNameRule.swift; sourceTree = ""; };
- FB465CE71B9889EA00398388 /* MaxLengthRule.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MaxLengthRule.swift; sourceTree = ""; };
- FB465CE81B9889EA00398388 /* MinLengthRule.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MinLengthRule.swift; sourceTree = ""; };
- FB465CE91B9889EA00398388 /* PasswordRule.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PasswordRule.swift; sourceTree = ""; };
- FB465CEA1B9889EA00398388 /* PhoneNumberRule.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = PhoneNumberRule.swift; sourceTree = ""; };
- FB465CEB1B9889EA00398388 /* RegexRule.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = RegexRule.swift; sourceTree = ""; };
- FB465CEC1B9889EA00398388 /* RequiredRule.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = RequiredRule.swift; sourceTree = ""; };
- FB465CED1B9889EA00398388 /* Rule.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Rule.swift; sourceTree = ""; };
- FB465CEE1B9889EA00398388 /* ValidationRule.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ValidationRule.swift; sourceTree = ""; };
- FB465CEF1B9889EA00398388 /* ZipCodeRule.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ZipCodeRule.swift; sourceTree = ""; };
- FB465CF11B9889EA00398388 /* ValidationError.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ValidationError.swift; sourceTree = ""; };
- FB465CF21B9889EA00398388 /* Validator.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Validator.swift; sourceTree = ""; };
- FB51E5AF1CD208B8004DE696 /* Validatable.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Validatable.swift; sourceTree = ""; };
- FBA963621CDA10130071F03E /* ValidatorDictionary.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ValidatorDictionary.swift; sourceTree = ""; };
/* End PBXFileReference section */
/* Begin PBXFrameworksBuildPhase section */
- 62D1AE291A1E6D4500E4DFF8 /* Frameworks */ = {
- isa = PBXFrameworksBuildPhase;
- buildActionMask = 2147483647;
- files = (
- );
- runOnlyForDeploymentPostprocessing = 0;
- };
FB465CAF1B9884F400398388 /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
@@ -119,141 +143,127 @@
/* End PBXFrameworksBuildPhase section */
/* Begin PBXGroup section */
- 62D1AE0E1A1E6D4400E4DFF8 = {
+ 288B8B1725170F0F00114B96 /* Sources */ = {
isa = PBXGroup;
children = (
- 62D1AE191A1E6D4400E4DFF8 /* Validator */,
- 62D1AE2F1A1E6D4500E4DFF8 /* ValidatorTests */,
- FB465CB41B9884F400398388 /* SwiftValidator */,
- FB465CC31B9884F400398388 /* SwiftValidatorTests */,
- 62D1AE181A1E6D4400E4DFF8 /* Products */,
+ 288B8B5B25170FED00114B96 /* SwiftValidator */,
);
+ path = Sources;
sourceTree = "";
};
- 62D1AE181A1E6D4400E4DFF8 /* Products */ = {
+ 288B8B1E25170F4C00114B96 /* Rules */ = {
isa = PBXGroup;
children = (
- 62D1AE2C1A1E6D4500E4DFF8 /* ValidatorTests.xctest */,
- FB465CB31B9884F400398388 /* SwiftValidator.framework */,
- FB465CBD1B9884F400398388 /* SwiftValidatorTests.xctest */,
+ 288B8B1F25170F4C00114B96 /* FullNameRule.swift */,
+ 288B8B2025170F4C00114B96 /* CardExpiryYearRule.swift */,
+ 288B8B2125170F4C00114B96 /* CharacterSetRule.swift */,
+ 288B8B2225170F4C00114B96 /* PasswordRule.swift */,
+ 288B8B2325170F4C00114B96 /* ExactLengthRule.swift */,
+ 288B8B2425170F4C00114B96 /* ConfirmRule.swift */,
+ 288B8B2525170F4C00114B96 /* MinLengthRule.swift */,
+ 288B8B2625170F4C00114B96 /* FloatRule.swift */,
+ 288B8B2725170F4C00114B96 /* MaxLengthRule.swift */,
+ 288B8B2825170F4C00114B96 /* CardExpiryMonthRule.swift */,
+ 288B8B2925170F4C00114B96 /* RegexRule.swift */,
+ 288B8B2A25170F4C00114B96 /* ZipCodeRule.swift */,
+ 288B8B2B25170F4C00114B96 /* HexColorRule.swift */,
+ 288B8B2C25170F4C00114B96 /* EmailRule.swift */,
+ 288B8B2D25170F4C00114B96 /* AlphaNumericRule.swift */,
+ 288B8B2E25170F4C00114B96 /* PhoneNumberRule.swift */,
+ 288B8B2F25170F4C00114B96 /* Rule.swift */,
+ 288B8B3025170F4C00114B96 /* RequiredRule.swift */,
+ 288B8B3125170F4C00114B96 /* IPV4Rule.swift */,
+ 288B8B3225170F4C00114B96 /* ValidationRule.swift */,
+ 288B8B3325170F4C00114B96 /* AlphaRule.swift */,
+ 288B8B3425170F4C00114B96 /* ISBNRule.swift */,
);
- name = Products;
+ path = Rules;
sourceTree = "";
};
- 62D1AE191A1E6D4400E4DFF8 /* Validator */ = {
+ 288B8B5B25170FED00114B96 /* SwiftValidator */ = {
isa = PBXGroup;
children = (
- 62D1AE1C1A1E6D4400E4DFF8 /* AppDelegate.swift */,
- 62D1AE1E1A1E6D4400E4DFF8 /* ViewController.swift */,
- 62D1AE201A1E6D4400E4DFF8 /* Main.storyboard */,
- 62D1AE231A1E6D4400E4DFF8 /* Images.xcassets */,
- 62D1AE251A1E6D4400E4DFF8 /* LaunchScreen.xib */,
- 62D1AE1A1A1E6D4400E4DFF8 /* Supporting Files */,
+ 288B8B1E25170F4C00114B96 /* Rules */,
+ 288B8B882517104400114B96 /* Core */,
+ 288B8B1D25170F4800114B96 /* Info.plist */,
+ 288B8B802517102F00114B96 /* SwiftValidator.swift */,
+ 288B8B7B2517102600114B96 /* SwiftValidator.h */,
);
- path = Validator;
+ path = SwiftValidator;
sourceTree = "";
};
- 62D1AE1A1A1E6D4400E4DFF8 /* Supporting Files */ = {
+ 288B8B882517104400114B96 /* Core */ = {
isa = PBXGroup;
children = (
- 62D1AE1B1A1E6D4400E4DFF8 /* Info.plist */,
+ 288B8B8C2517107100114B96 /* Validatable.swift */,
+ 288B8B892517107100114B96 /* ValidationDelegate.swift */,
+ 288B8B8A2517107100114B96 /* ValidationError.swift */,
+ 288B8B8D2517107100114B96 /* Validator.swift */,
+ 288B8B8B2517107100114B96 /* ValidatorDictionary.swift */,
);
- name = "Supporting Files";
+ path = Core;
sourceTree = "";
};
- 62D1AE2F1A1E6D4500E4DFF8 /* ValidatorTests */ = {
+ 288B8B96251710D200114B96 /* Tests */ = {
isa = PBXGroup;
children = (
- 62D1AE301A1E6D4500E4DFF8 /* Supporting Files */,
+ 288B8B97251710DC00114B96 /* SwiftValidatorTests */,
+ 288B8B982517110700114B96 /* SwiftValidatorTests-Bridging-Header.h */,
);
- path = ValidatorTests;
+ path = Tests;
sourceTree = "";
};
- 62D1AE301A1E6D4500E4DFF8 /* Supporting Files */ = {
+ 288B8B97251710DC00114B96 /* SwiftValidatorTests */ = {
isa = PBXGroup;
children = (
- 62D1AE311A1E6D4500E4DFF8 /* Info.plist */,
+ 288B8BA22517112200114B96 /* Info.plist */,
+ 288B8BA12517112200114B96 /* SwiftValidatorTests.swift */,
+ 288B8BA32517112300114B96 /* XCTestManifests.swift */,
);
- name = "Supporting Files";
+ path = SwiftValidatorTests;
sourceTree = "";
};
- FB465CB41B9884F400398388 /* SwiftValidator */ = {
+ 62D1AE0E1A1E6D4400E4DFF8 = {
isa = PBXGroup;
children = (
- FB465CE21B9889EA00398388 /* Rules */,
- FB465CF01B9889EA00398388 /* Core */,
- FB465CB71B9884F400398388 /* SwiftValidator.h */,
- FB465CB51B9884F400398388 /* Supporting Files */,
+ 288B8B96251710D200114B96 /* Tests */,
+ 288B8B1725170F0F00114B96 /* Sources */,
+ 288B8AF0251709B400114B96 /* Package.swift */,
+ 62D1AE191A1E6D4400E4DFF8 /* Validator */,
+ 62D1AE181A1E6D4400E4DFF8 /* Products */,
);
- path = SwiftValidator;
sourceTree = "";
};
- FB465CB51B9884F400398388 /* Supporting Files */ = {
+ 62D1AE181A1E6D4400E4DFF8 /* Products */ = {
isa = PBXGroup;
children = (
- FB465CB61B9884F400398388 /* Info.plist */,
+ FB465CB31B9884F400398388 /* SwiftValidator.framework */,
+ FB465CBD1B9884F400398388 /* SwiftValidatorTests.xctest */,
);
- name = "Supporting Files";
+ name = Products;
sourceTree = "";
};
- FB465CC31B9884F400398388 /* SwiftValidatorTests */ = {
+ 62D1AE191A1E6D4400E4DFF8 /* Validator */ = {
isa = PBXGroup;
children = (
- FB465CC61B9884F400398388 /* SwiftValidatorTests.swift */,
- FB465CC41B9884F400398388 /* Supporting Files */,
+ 62D1AE1C1A1E6D4400E4DFF8 /* AppDelegate.swift */,
+ 62D1AE1E1A1E6D4400E4DFF8 /* ViewController.swift */,
+ 62D1AE201A1E6D4400E4DFF8 /* Main.storyboard */,
+ 62D1AE231A1E6D4400E4DFF8 /* Images.xcassets */,
+ 62D1AE251A1E6D4400E4DFF8 /* LaunchScreen.xib */,
+ 62D1AE1A1A1E6D4400E4DFF8 /* Supporting Files */,
);
- path = SwiftValidatorTests;
+ path = Validator;
sourceTree = "";
};
- FB465CC41B9884F400398388 /* Supporting Files */ = {
+ 62D1AE1A1A1E6D4400E4DFF8 /* Supporting Files */ = {
isa = PBXGroup;
children = (
- FB465CC51B9884F400398388 /* Info.plist */,
+ 62D1AE1B1A1E6D4400E4DFF8 /* Info.plist */,
);
name = "Supporting Files";
sourceTree = "";
};
- FB465CE21B9889EA00398388 /* Rules */ = {
- isa = PBXGroup;
- children = (
- 7CC1E4CE1C636B4500AF013C /* AlphaRule.swift */,
- C87F606B1E2B68C900EB8429 /* CardExpiryYearRule.swift */,
- C87F60691E2B678B00EB8429 /* CardExpiryMonthRule.swift */,
- 7CC1E4D01C637A7700AF013C /* AlphaNumericRule.swift */,
- 7CC1E4D21C637ABC00AF013C /* CharacterSetRule.swift */,
- 7CC1E4D41C637C8500AF013C /* IPV4Rule.swift */,
- 7CC1E4D61C637F6E00AF013C /* ISBNRule.swift */,
- 7CC1E4DA1C63BFA600AF013C /* HexColorRule.swift */,
- FB465CE31B9889EA00398388 /* ConfirmRule.swift */,
- FB465CE41B9889EA00398388 /* EmailRule.swift */,
- FB465CE51B9889EA00398388 /* FloatRule.swift */,
- FB465CE61B9889EA00398388 /* FullNameRule.swift */,
- FB465CE71B9889EA00398388 /* MaxLengthRule.swift */,
- FB465CE81B9889EA00398388 /* MinLengthRule.swift */,
- FB465CE91B9889EA00398388 /* PasswordRule.swift */,
- FB465CEA1B9889EA00398388 /* PhoneNumberRule.swift */,
- FB465CEB1B9889EA00398388 /* RegexRule.swift */,
- FB465CEC1B9889EA00398388 /* RequiredRule.swift */,
- FB465CED1B9889EA00398388 /* Rule.swift */,
- FB465CEE1B9889EA00398388 /* ValidationRule.swift */,
- FB465CEF1B9889EA00398388 /* ZipCodeRule.swift */,
- 62C1821C1C6312F5003788E7 /* ExactLengthRule.swift */,
- );
- path = Rules;
- sourceTree = "";
- };
- FB465CF01B9889EA00398388 /* Core */ = {
- isa = PBXGroup;
- children = (
- 62D9B2551C7C0B2A00BAFCE3 /* ValidationDelegate.swift */,
- FB465CF11B9889EA00398388 /* ValidationError.swift */,
- FB465CF21B9889EA00398388 /* Validator.swift */,
- FB51E5AF1CD208B8004DE696 /* Validatable.swift */,
- FBA963621CDA10130071F03E /* ValidatorDictionary.swift */,
- );
- path = Core;
- sourceTree = "";
- };
/* End PBXGroup section */
/* Begin PBXHeadersBuildPhase section */
@@ -261,30 +271,13 @@
isa = PBXHeadersBuildPhase;
buildActionMask = 2147483647;
files = (
- FB465CB81B9884F400398388 /* SwiftValidator.h in Headers */,
+ 288B8B7C2517102900114B96 /* SwiftValidator.h in Headers */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXHeadersBuildPhase section */
/* Begin PBXNativeTarget section */
- 62D1AE2B1A1E6D4500E4DFF8 /* ValidatorTests */ = {
- isa = PBXNativeTarget;
- buildConfigurationList = 62D1AE391A1E6D4500E4DFF8 /* Build configuration list for PBXNativeTarget "ValidatorTests" */;
- buildPhases = (
- 62D1AE281A1E6D4500E4DFF8 /* Sources */,
- 62D1AE291A1E6D4500E4DFF8 /* Frameworks */,
- 62D1AE2A1A1E6D4500E4DFF8 /* Resources */,
- );
- buildRules = (
- );
- dependencies = (
- );
- name = ValidatorTests;
- productName = ValidatorTests;
- productReference = 62D1AE2C1A1E6D4500E4DFF8 /* ValidatorTests.xctest */;
- productType = "com.apple.product-type.bundle.unit-test";
- };
FB465CB21B9884F400398388 /* SwiftValidator */ = {
isa = PBXNativeTarget;
buildConfigurationList = FB465CD01B9884F400398388 /* Build configuration list for PBXNativeTarget "SwiftValidator" */;
@@ -332,19 +325,13 @@
LastUpgradeCheck = 0930;
ORGANIZATIONNAME = jpotts18;
TargetAttributes = {
- 62D1AE2B1A1E6D4500E4DFF8 = {
- CreatedOnToolsVersion = 6.1;
- LastSwiftMigration = 0820;
- TestTargetID = 62D1AE161A1E6D4400E4DFF8;
- };
FB465CB21B9884F400398388 = {
CreatedOnToolsVersion = 6.4;
LastSwiftMigration = 1020;
};
FB465CBC1B9884F400398388 = {
CreatedOnToolsVersion = 6.4;
- LastSwiftMigration = 1020;
- TestTargetID = 62D1AE161A1E6D4400E4DFF8;
+ LastSwiftMigration = 1200;
};
};
};
@@ -361,7 +348,6 @@
projectDirPath = "";
projectRoot = "";
targets = (
- 62D1AE2B1A1E6D4500E4DFF8 /* ValidatorTests */,
FB465CB21B9884F400398388 /* SwiftValidator */,
FB465CBC1B9884F400398388 /* SwiftValidatorTests */,
);
@@ -369,13 +355,6 @@
/* End PBXProject section */
/* Begin PBXResourcesBuildPhase section */
- 62D1AE2A1A1E6D4500E4DFF8 /* Resources */ = {
- isa = PBXResourcesBuildPhase;
- buildActionMask = 2147483647;
- files = (
- );
- runOnlyForDeploymentPostprocessing = 0;
- };
FB465CB11B9884F400398388 /* Resources */ = {
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
@@ -393,44 +372,38 @@
/* End PBXResourcesBuildPhase section */
/* Begin PBXSourcesBuildPhase section */
- 62D1AE281A1E6D4500E4DFF8 /* Sources */ = {
- isa = PBXSourcesBuildPhase;
- buildActionMask = 2147483647;
- files = (
- );
- runOnlyForDeploymentPostprocessing = 0;
- };
FB465CAE1B9884F400398388 /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
- FB465CF41B9889EA00398388 /* EmailRule.swift in Sources */,
- FB465CF61B9889EA00398388 /* FullNameRule.swift in Sources */,
- FBA963631CDA10130071F03E /* ValidatorDictionary.swift in Sources */,
- FB465CFF1B9889EA00398388 /* ZipCodeRule.swift in Sources */,
- FB465CF91B9889EA00398388 /* PasswordRule.swift in Sources */,
- 7CC1E4D11C637A7700AF013C /* AlphaNumericRule.swift in Sources */,
- 7CC1E4D31C637ABC00AF013C /* CharacterSetRule.swift in Sources */,
- FB465CFD1B9889EA00398388 /* Rule.swift in Sources */,
- FB465CFA1B9889EA00398388 /* PhoneNumberRule.swift in Sources */,
- FB465CF51B9889EA00398388 /* FloatRule.swift in Sources */,
- C87F606C1E2B68C900EB8429 /* CardExpiryYearRule.swift in Sources */,
- 7CC1E4DB1C63BFA600AF013C /* HexColorRule.swift in Sources */,
- FB465D011B9889EA00398388 /* Validator.swift in Sources */,
- FB465CFE1B9889EA00398388 /* ValidationRule.swift in Sources */,
- C87F606A1E2B678B00EB8429 /* CardExpiryMonthRule.swift in Sources */,
- FB465CF31B9889EA00398388 /* ConfirmRule.swift in Sources */,
- FB51E5B01CD208B8004DE696 /* Validatable.swift in Sources */,
- 7CC1E4D51C637C8500AF013C /* IPV4Rule.swift in Sources */,
- 7CC1E4D71C637F6E00AF013C /* ISBNRule.swift in Sources */,
- FB465D001B9889EA00398388 /* ValidationError.swift in Sources */,
- FB465CFC1B9889EA00398388 /* RequiredRule.swift in Sources */,
- FB465CFB1B9889EA00398388 /* RegexRule.swift in Sources */,
- 7CC1E4CF1C636B4500AF013C /* AlphaRule.swift in Sources */,
- 62D9B2561C7C0B2A00BAFCE3 /* ValidationDelegate.swift in Sources */,
- FB465CF81B9889EA00398388 /* MinLengthRule.swift in Sources */,
- FB465CF71B9889EA00398388 /* MaxLengthRule.swift in Sources */,
- 62C1821D1C6312F5003788E7 /* ExactLengthRule.swift in Sources */,
+ 288B8B692517100B00114B96 /* PasswordRule.swift in Sources */,
+ 288B8B702517100B00114B96 /* MinLengthRule.swift in Sources */,
+ 288B8B712517100B00114B96 /* CharacterSetRule.swift in Sources */,
+ 288B8B652517100B00114B96 /* FloatRule.swift in Sources */,
+ 288B8B922517107100114B96 /* Validator.swift in Sources */,
+ 288B8B902517107100114B96 /* ValidatorDictionary.swift in Sources */,
+ 288B8B682517100B00114B96 /* RegexRule.swift in Sources */,
+ 288B8B812517102F00114B96 /* SwiftValidator.swift in Sources */,
+ 288B8B6A2517100B00114B96 /* Rule.swift in Sources */,
+ 288B8B6B2517100B00114B96 /* MaxLengthRule.swift in Sources */,
+ 288B8B5C2517100100114B96 /* FullNameRule.swift in Sources */,
+ 288B8B912517107100114B96 /* Validatable.swift in Sources */,
+ 288B8B6C2517100B00114B96 /* ZipCodeRule.swift in Sources */,
+ 288B8B672517100B00114B96 /* EmailRule.swift in Sources */,
+ 288B8B8F2517107100114B96 /* ValidationError.swift in Sources */,
+ 288B8B662517100B00114B96 /* ValidationRule.swift in Sources */,
+ 288B8B602517100400114B96 /* CardExpiryYearRule.swift in Sources */,
+ 288B8B732517100B00114B96 /* ConfirmRule.swift in Sources */,
+ 288B8B752517100B00114B96 /* CardExpiryMonthRule.swift in Sources */,
+ 288B8B772517100B00114B96 /* RequiredRule.swift in Sources */,
+ 288B8B722517100B00114B96 /* IPV4Rule.swift in Sources */,
+ 288B8B8E2517107100114B96 /* ValidationDelegate.swift in Sources */,
+ 288B8B6D2517100B00114B96 /* AlphaNumericRule.swift in Sources */,
+ 288B8B6E2517100B00114B96 /* HexColorRule.swift in Sources */,
+ 288B8B642517100B00114B96 /* ExactLengthRule.swift in Sources */,
+ 288B8B762517100B00114B96 /* PhoneNumberRule.swift in Sources */,
+ 288B8B6F2517100B00114B96 /* ISBNRule.swift in Sources */,
+ 288B8B742517100B00114B96 /* AlphaRule.swift in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -438,7 +411,35 @@
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
- FB465CC71B9884F400398388 /* SwiftValidatorTests.swift in Sources */,
+ 2858C0DB2517C0880087C315 /* RegexRule.swift in Sources */,
+ 2858C0D62517C0880087C315 /* AlphaNumericRule.swift in Sources */,
+ 2858C0DE2517C0880087C315 /* AlphaRule.swift in Sources */,
+ 2858C0E22517C0880087C315 /* ISBNRule.swift in Sources */,
+ 2858C0CF2517C07D0087C315 /* Validatable.swift in Sources */,
+ 2858C0CE2517C07D0087C315 /* ValidatorDictionary.swift in Sources */,
+ 288B8BA42517112300114B96 /* SwiftValidatorTests.swift in Sources */,
+ 2858C0E92517C0880087C315 /* MaxLengthRule.swift in Sources */,
+ 2858C0E32517C0880087C315 /* PasswordRule.swift in Sources */,
+ 2858C0E12517C0880087C315 /* MinLengthRule.swift in Sources */,
+ 2858C0DC2517C0880087C315 /* RequiredRule.swift in Sources */,
+ 2858C0EA2517C0880087C315 /* ConfirmRule.swift in Sources */,
+ 2858C0D72517C0880087C315 /* EmailRule.swift in Sources */,
+ 2858C0DF2517C0880087C315 /* CardExpiryYearRule.swift in Sources */,
+ 2858C0E82517C0880087C315 /* FullNameRule.swift in Sources */,
+ 2858C0D12517C07D0087C315 /* Validator.swift in Sources */,
+ 2858C0D92517C0880087C315 /* CharacterSetRule.swift in Sources */,
+ 2858C0E62517C0880087C315 /* PhoneNumberRule.swift in Sources */,
+ 2858C0D22517C07D0087C315 /* ValidationError.swift in Sources */,
+ 2858C0E02517C0880087C315 /* HexColorRule.swift in Sources */,
+ 2858C0E52517C0880087C315 /* FloatRule.swift in Sources */,
+ 2858C0DA2517C0880087C315 /* CardExpiryMonthRule.swift in Sources */,
+ 2858C0DD2517C0880087C315 /* IPV4Rule.swift in Sources */,
+ 288B8BA62517112300114B96 /* XCTestManifests.swift in Sources */,
+ 2858C0D82517C0880087C315 /* Rule.swift in Sources */,
+ 2858C0D52517C0880087C315 /* ZipCodeRule.swift in Sources */,
+ 2858C0E72517C0880087C315 /* ValidationRule.swift in Sources */,
+ 2858C0D02517C07D0087C315 /* ValidationDelegate.swift in Sources */,
+ 2858C0E42517C0880087C315 /* ExactLengthRule.swift in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -575,36 +576,6 @@
};
name = Release;
};
- 62D1AE3A1A1E6D4500E4DFF8 /* Debug */ = {
- isa = XCBuildConfiguration;
- buildSettings = {
- BUNDLE_LOADER = "$(TEST_HOST)";
- CLANG_ENABLE_MODULES = YES;
- GCC_PREPROCESSOR_DEFINITIONS = (
- "DEBUG=1",
- "$(inherited)",
- );
- INFOPLIST_FILE = ValidatorTests/Info.plist;
- LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
- PRODUCT_BUNDLE_IDENTIFIER = "me.jeffpotter.$(PRODUCT_NAME:rfc1034identifier)";
- PRODUCT_NAME = "$(TARGET_NAME)";
- TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Validator.app/Validator";
- };
- name = Debug;
- };
- 62D1AE3B1A1E6D4500E4DFF8 /* Release */ = {
- isa = XCBuildConfiguration;
- buildSettings = {
- BUNDLE_LOADER = "$(TEST_HOST)";
- CLANG_ENABLE_MODULES = YES;
- INFOPLIST_FILE = ValidatorTests/Info.plist;
- LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
- PRODUCT_BUNDLE_IDENTIFIER = "me.jeffpotter.$(PRODUCT_NAME:rfc1034identifier)";
- PRODUCT_NAME = "$(TARGET_NAME)";
- TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Validator.app/Validator";
- };
- name = Release;
- };
FB465CCC1B9884F400398388 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
@@ -620,7 +591,7 @@
"DEBUG=1",
"$(inherited)",
);
- INFOPLIST_FILE = SwiftValidator/Info.plist;
+ INFOPLIST_FILE = Sources/SwiftValidator/Info.plist;
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
PRODUCT_BUNDLE_IDENTIFIER = "me.jeffpotter.$(PRODUCT_NAME:rfc1034identifier)";
@@ -645,7 +616,7 @@
DYLIB_CURRENT_VERSION = 1;
DYLIB_INSTALL_NAME_BASE = "@rpath";
GCC_NO_COMMON_BLOCKS = YES;
- INFOPLIST_FILE = SwiftValidator/Info.plist;
+ INFOPLIST_FILE = Sources/SwiftValidator/Info.plist;
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
PRODUCT_BUNDLE_IDENTIFIER = "me.jeffpotter.$(PRODUCT_NAME:rfc1034identifier)";
@@ -662,6 +633,8 @@
FB465CCE1B9884F400398388 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
+ ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
+ CLANG_ENABLE_MODULES = YES;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
FRAMEWORK_SEARCH_PATHS = (
"$(SDKROOT)/Developer/Library/Frameworks",
@@ -672,19 +645,22 @@
"DEBUG=1",
"$(inherited)",
);
- INFOPLIST_FILE = SwiftValidatorTests/Info.plist;
+ INFOPLIST_FILE = Tests/SwiftValidatorTests/Info.plist;
IPHONEOS_DEPLOYMENT_TARGET = 8.4;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
PRODUCT_BUNDLE_IDENTIFIER = "com.levous.$(PRODUCT_NAME:rfc1034identifier)";
PRODUCT_NAME = "$(TARGET_NAME)";
+ SWIFT_OBJC_BRIDGING_HEADER = "Tests/SwiftValidatorTests-Bridging-Header.h";
+ SWIFT_OPTIMIZATION_LEVEL = "-Onone";
SWIFT_VERSION = 5.0;
- TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Validator.app/Validator";
};
name = Debug;
};
FB465CCF1B9884F400398388 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
+ ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
+ CLANG_ENABLE_MODULES = YES;
COPY_PHASE_STRIP = NO;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
FRAMEWORK_SEARCH_PATHS = (
@@ -692,14 +668,14 @@
"$(inherited)",
);
GCC_NO_COMMON_BLOCKS = YES;
- INFOPLIST_FILE = SwiftValidatorTests/Info.plist;
+ INFOPLIST_FILE = Tests/SwiftValidatorTests/Info.plist;
IPHONEOS_DEPLOYMENT_TARGET = 8.4;
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
PRODUCT_BUNDLE_IDENTIFIER = "com.levous.$(PRODUCT_NAME:rfc1034identifier)";
PRODUCT_NAME = "$(TARGET_NAME)";
+ SWIFT_OBJC_BRIDGING_HEADER = "Tests/SwiftValidatorTests-Bridging-Header.h";
SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule";
SWIFT_VERSION = 5.0;
- TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Validator.app/Validator";
};
name = Release;
};
@@ -715,15 +691,6 @@
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
- 62D1AE391A1E6D4500E4DFF8 /* Build configuration list for PBXNativeTarget "ValidatorTests" */ = {
- isa = XCConfigurationList;
- buildConfigurations = (
- 62D1AE3A1A1E6D4500E4DFF8 /* Debug */,
- 62D1AE3B1A1E6D4500E4DFF8 /* Release */,
- );
- defaultConfigurationIsVisible = 0;
- defaultConfigurationName = Release;
- };
FB465CD01B9884F400398388 /* Build configuration list for PBXNativeTarget "SwiftValidator" */ = {
isa = XCConfigurationList;
buildConfigurations = (
diff --git a/Validator.xcodeproj/xcshareddata/xcschemes/SwiftValidator.xcscheme b/Validator.xcodeproj/xcshareddata/xcschemes/SwiftValidator.xcscheme
index d6ae464..ba12fd2 100644
--- a/Validator.xcodeproj/xcshareddata/xcschemes/SwiftValidator.xcscheme
+++ b/Validator.xcodeproj/xcshareddata/xcschemes/SwiftValidator.xcscheme
@@ -41,6 +41,15 @@
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
shouldUseLaunchSchemeArgsEnv = "YES">
+
+
+
+
@@ -53,17 +62,6 @@
-
-
-
-
-
-
-
-
-
-
-
- CFBundleDevelopmentRegion
- en
- CFBundleExecutable
- $(EXECUTABLE_NAME)
- CFBundleIdentifier
- $(PRODUCT_BUNDLE_IDENTIFIER)
- CFBundleInfoDictionaryVersion
- 6.0
- CFBundleName
- $(PRODUCT_NAME)
- CFBundlePackageType
- BNDL
- CFBundleShortVersionString
- 1.0
- CFBundleSignature
- ????
- CFBundleVersion
- 1
-
-