/vendor/TouchJSON/JSON/CJSONSerializer.h
C Header | 53 lines | 16 code | 8 blank | 29 comment | 0 complexity | 89dfb12df5b20bec831b2b1b0efb162f MD5 | raw file
1// 2// CJSONSerializer.h 3// TouchCode 4// 5// Created by Jonathan Wight on 12/07/2005. 6// Copyright 2005 toxicsoftware.com. All rights reserved. 7// 8// Permission is hereby granted, free of charge, to any person 9// obtaining a copy of this software and associated documentation 10// files (the "Software"), to deal in the Software without 11// restriction, including without limitation the rights to use, 12// copy, modify, merge, publish, distribute, sublicense, and/or sell 13// copies of the Software, and to permit persons to whom the 14// Software is furnished to do so, subject to the following 15// conditions: 16// 17// The above copyright notice and this permission notice shall be 18// included in all copies or substantial portions of the Software. 19// 20// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 21// EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES 22// OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 23// NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT 24// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, 25// WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 26// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 27// OTHER DEALINGS IN THE SOFTWARE. 28// 29 30#import <Foundation/Foundation.h> 31 32@interface CJSONSerializer : NSObject { 33} 34 35+ (id)serializer; 36 37- (BOOL)isValidJSONObject:(id)inObject; 38 39/// Take any JSON compatible object (generally NSNull, NSNumber, NSString, NSArray and NSDictionary) and produce an NSData containing the serialized JSON. 40- (NSData *)serializeObject:(id)inObject error:(NSError **)outError; 41 42- (NSData *)serializeNull:(NSNull *)inNull error:(NSError **)outError; 43- (NSData *)serializeNumber:(NSNumber *)inNumber error:(NSError **)outError; 44- (NSData *)serializeString:(NSString *)inString error:(NSError **)outError; 45- (NSData *)serializeArray:(NSArray *)inArray error:(NSError **)outError; 46- (NSData *)serializeDictionary:(NSDictionary *)inDictionary error:(NSError **)outError; 47 48@end 49 50typedef enum { 51 CJSONSerializerErrorCouldNotSerializeDataType = -1, 52 CJSONSerializerErrorCouldNotSerializeObject = -1 53} CJSONSerializerError;