0001 // 0002 // CommandMessageGenerator.swift 0003 // Example 0004 // 0005 // Created by Jake Heiser on 6/13/15. 0006 // Copyright © 2015 jakeheis. All rights reserved. 0007 // 0008 0009 class CommandMessageGenerator{ 0010 0011 class func generateUsageStatement
CLI.swift:156 if let message = CommandMessageGenerator.generateMisusedOptionsStatement(command: optionCommand, options: options) {Command.swift:86 print(CommandMessageGenerator.generateUsageStatement(command: self, options: options))(command command: CommandType, options: Options?) -> String { 0012 var message = "Usage: \(CLI.appName)" 0013 0014 if !command.commandName.isEmpty { 0015 message += " \(command.commandName)" 0016 } 0017 0018 if !command.commandSignature.isEmpty { 0019 message += " \(command.commandSignature)" 0020 } 0021 0022 if let options = options where !options.flagOptions.isEmpty || !options.keyOptions.isEmpty { 0023 message += " [options]\n" 0024 0025 let allKeys = Array(options.flagOptions.keys) + Array(options.keyOptions.keys) 0026 let sortedKeys = allKeys.sort() 0027 for key in sortedKeys { 0028 let usage = options.flagOptions[key]?.usage ?? options.keyOptions[key]?.usage ?? "" 0029 message += "\n\(usage)" 0030 } 0031 0032 message += "\n" 0033 } else { 0034 message += " (no options)\n" 0035 } 0036 0037 return message 0038 } 0039 0040 class func generateMisusedOptionsStatement
Command.swift:86 print(CommandMessageGenerator.generateUsageStatement(command: self, options: options))CommandMessageGenerator.swift:49 return generateUsageStatement(command: command, options: options)CommandMessageGenerator.swift:53 return generateUsageStatement(command: command, options: options) + "\n" + options.misusedOptionsMessage()(command command: CommandType, options: Options) -> String? { 0041 guard let optionsCommand = command as? OptionCommandType else { 0042 return nil 0043 } 0044 0045 switch optionsCommand.unrecognizedOptionsPrintingBehavior { 0046 case .PrintNone: 0047 return nil 0048 case .PrintOnlyUsage: 0049 return generateUsageStatement(command: command, options: options) 0050 case .PrintOnlyUnrecognizedOptions: 0051 return options.misusedOptionsMessage() 0052 case .PrintAll: 0053 return generateUsageStatement(command: command, options: options) + "\n" + options.misusedOptionsMessage() 0054 } 0055 } 0056 0057 } 0058
CLI.swift:156 if let message = CommandMessageGenerator.generateMisusedOptionsStatement(command: optionCommand, options: options) {