Skip to content

Instantly share code, notes, and snippets.

@PeteC
Created June 9, 2014 13:21
Show Gist options
  • Save PeteC/0f5a80f4d2eb3b72627a to your computer and use it in GitHub Desktop.
Save PeteC/0f5a80f4d2eb3b72627a to your computer and use it in GitHub Desktop.
//
// Result.swift
// DocumentOrganiser
//
// Created by Jonathan Wight on 6/8/14.
// Copyright (c) 2014 schwa. All rights reserved.
//
import Foundation
enum Result : LogicValue {
case Value(AnyObject?)
case Error(NSError)
var successful : Bool {
get {
switch self {
case .Value: return true
case .Error: return false
}
}
}
var value : AnyObject? {
get {
switch self {
case .Value(let v): return v
case .Error: return nil
}
}
}
var error : NSError? {
get {
switch self {
case .Value: return nil
case .Error(let e): return e
}
}
}
func getLogicValue() -> Bool {
return self.successful
}
}
//enum Result<ValueType, ErrorType> : LogicValue {
// case Value(ValueType)
// case Error(ErrorType)
//
// var successful : Bool {
// get {
// switch self {
// case .Value: return true
// case .Error: return false
// }
// }
// }
//
// var value : ValueType? {
// get {
// switch self {
// case .Value(let v): return v
// case .Error: return nil
// }
// }
// }
//
// var error : ErrorType? {
// get {
// switch self {
// case .Value: return nil
// case .Error(let e): return e
// }
// }
// }
//
// func getLogicValue() -> Bool {
// return self.successful
// }
//
//}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment