         }
     }
     
-    var bool: Bool? {
+    public var bool: Bool? {
         switch self {
         case .JBool(let value):
             return value

        }
    }
    
    var integer: Int? {
        switch self {
        case .JBool(let value):
            return Int(value)

}

extension JSONValue: Printable {
    public var description: String {
        switch self {
        case .JInvalid(let error):
            return error.localizedDescription
        default:
            return printableString("")
        }
    }
    
    public var rawJSONString: String {
        switch self {
        case .JNumber(let value):
            return "\(value)"
