 import TSCBasic
+import TSCUtility
 
 /// The Swift driver.
 public struct Driver {
 
   enum Error: Swift.Error {
     case invalidDriverName(String)
-    case driverKindUnimplemented(DriverKind)
   }
 
   /// The kind of driver.

      break
    }
  }
}

extension Option {


  /// Run the driver.
  public func run() throws {
    let argsWithoutExecutable = Array(args.dropFirst())

    // We just need to invoke the corresponding tool if the kind isn't Swift compiler.
    guard driverKind.isSwiftCompiler else {
      let swiftCompiler = try getSwiftCompilerPath()
      return try exec(path: swiftCompiler.pathString, args: ["swift"] + argsWithoutExecutable)
    }

    let optionTable = OptionTable(driverKind: driverKind)
    let options = try optionTable.parse(argsWithoutExecutable)

    if options.contains(.help) {
      optionTable.printHelp(usage: driverKind.usage, title: driverKind.title, includeHidden: options.contains(.help_hidden))
