diff --git a/OptionParse.xcodeproj/project.pbxproj b/OptionParse.xcodeproj/project.pbxproj
index ff2f6b6..5371973 100644
--- a/OptionParse.xcodeproj/project.pbxproj
+++ b/OptionParse.xcodeproj/project.pbxproj
@@ -214,12 +214,12 @@
isa = PBXProject;
attributes = {
LastSwiftUpdateCheck = 0730;
- LastUpgradeCheck = 0800;
+ LastUpgradeCheck = 0930;
ORGANIZATIONNAME = "Steve Marquis";
TargetAttributes = {
AA1BF11B1D543CB100BD82D4 = {
CreatedOnToolsVersion = 7.3.1;
- LastSwiftMigration = 0800;
+ LastSwiftMigration = 0930;
};
AA1BF1251D543CB100BD82D4 = {
CreatedOnToolsVersion = 7.3.1;
@@ -327,14 +327,22 @@
CLANG_CXX_LIBRARY = "libc++";
CLANG_ENABLE_MODULES = YES;
CLANG_ENABLE_OBJC_ARC = YES;
+ CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
CLANG_WARN_BOOL_CONVERSION = YES;
+ CLANG_WARN_COMMA = YES;
CLANG_WARN_CONSTANT_CONVERSION = YES;
+ CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
CLANG_WARN_EMPTY_BODY = YES;
CLANG_WARN_ENUM_CONVERSION = YES;
CLANG_WARN_INFINITE_RECURSION = YES;
CLANG_WARN_INT_CONVERSION = YES;
+ CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
+ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
+ CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+ CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
+ CLANG_WARN_STRICT_PROTOTYPES = YES;
CLANG_WARN_SUSPICIOUS_MOVE = YES;
CLANG_WARN_UNREACHABLE_CODE = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
@@ -378,14 +386,22 @@
CLANG_CXX_LIBRARY = "libc++";
CLANG_ENABLE_MODULES = YES;
CLANG_ENABLE_OBJC_ARC = YES;
+ CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
CLANG_WARN_BOOL_CONVERSION = YES;
+ CLANG_WARN_COMMA = YES;
CLANG_WARN_CONSTANT_CONVERSION = YES;
+ CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
CLANG_WARN_EMPTY_BODY = YES;
CLANG_WARN_ENUM_CONVERSION = YES;
CLANG_WARN_INFINITE_RECURSION = YES;
CLANG_WARN_INT_CONVERSION = YES;
+ CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
+ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
+ CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
+ CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
+ CLANG_WARN_STRICT_PROTOTYPES = YES;
CLANG_WARN_SUSPICIOUS_MOVE = YES;
CLANG_WARN_UNREACHABLE_CODE = YES;
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
@@ -430,7 +446,7 @@
PRODUCT_NAME = "$(TARGET_NAME)";
SKIP_INSTALL = YES;
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
- SWIFT_VERSION = 3.0;
+ SWIFT_VERSION = 4.0;
};
name = Debug;
};
@@ -450,7 +466,7 @@
PRODUCT_BUNDLE_IDENTIFIER = com.BobDevil.OptionParse;
PRODUCT_NAME = "$(TARGET_NAME)";
SKIP_INSTALL = YES;
- SWIFT_VERSION = 3.0;
+ SWIFT_VERSION = 4.0;
};
name = Release;
};
diff --git a/OptionParse.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/OptionParse.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
new file mode 100644
index 0000000..18d9810
--- /dev/null
+++ b/OptionParse.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
@@ -0,0 +1,8 @@
+
+
+
+
+ IDEDidComputeMac32BitWarning
+
+
+
diff --git a/OptionParse.xcodeproj/xcshareddata/xcschemes/OptionParse.xcscheme b/OptionParse.xcodeproj/xcshareddata/xcschemes/OptionParse.xcscheme
index ca3831f..038b23a 100644
--- a/OptionParse.xcodeproj/xcshareddata/xcschemes/OptionParse.xcscheme
+++ b/OptionParse.xcodeproj/xcshareddata/xcschemes/OptionParse.xcscheme
@@ -1,6 +1,6 @@
2 {
- let value = str.substring(from: str.characters.index(str.startIndex, offsetBy: 2))
+ if str.hasPrefix("--") && str.count > 2 {
+ let value = String(str[str.index(str.startIndex, offsetBy: 2)...])
self = .name(value)
- } else if str.hasPrefix("-") && str.characters.count == 2 {
- self = .shortName(str.characters.last!)
+ } else if str.hasPrefix("-") && str.count == 2 {
+ self = .shortName(str.last!)
} else {
self = .argument(str)
}
@@ -246,15 +246,15 @@ extension String {
func terminalWidthLines(withTabDepth tabDepth: Int) -> String {
var remainingString = self
var lines: [String] = []
- while remainingString.characters.count > 80 {
- guard let range = remainingString.rangeOfCharacter(from: CharacterSet.whitespaces, options: .backwards, range: remainingString.startIndex.. 80 {
+ guard let range = remainingString.rangeOfCharacter(from: CharacterSet.whitespaces, options: .backwards, range: remainingString.startIndex..