 
   var count: Int { return (_value != nil) ? 1 : 0 }
 
-  subscript(i: Int) -> (String, MirrorType) { 
+  subscript(i: Int) -> (String, MirrorType) {
     switch (_value,i) {
     case (.Some(let contents),0) : return ("Some",reflect(contents))
     default: _preconditionFailure("cannot extract this child index")
     }
   }
 
-  var summary: String { 
+  var summary: String {
     switch _value {
       case .Some(let contents): return reflect(contents).summary
       default: return "nil"

@transparent public
func ~= <T>(lhs: _OptionalNilComparisonType, rhs: T?) -> Bool {
  switch rhs {
  case .Some(_) :
    return false
  case .None :
    return true
  }
}

      return false
    }
  }

  /// Haskell's fmap, which was mis-named
  public func map<U>(f: (T)->U) -> U? {
    switch self {
