Samond Classes Library 1.1.6-RELEASE build 132

SCNumber.h

Go to the documentation of this file.
00001 //
00002 //  SCNumber.h
00003 //  scl
00004 //
00005 //  Created by Viacheslav Smolensky on 17.04.12.
00006 //  Copyright (c) 2007 - 2014 by Samond Development Corporation. All rights reserved.
00007 //
00008 
00016 #import <Foundation/Foundation.h>
00017 #import <scl/SCTypes.h>
00018 #import <scl/SCCollectionProtocol.h>
00019 
00020 #define NSNumberClass @"NSNumber" ///< NSNumber class name
00021 
00032 @interface NSNumber(SCNumber) <SCDictionaryObjectProtocol, SCCollectionProtocol, SCCodingProtocol,
00033                                SCStreamProtocol>
00034 #pragma mark -
00035 #pragma mark Class properties
00036 #if (__MAC_OS_X_VERSION_MIN_REQUIRED > 1040) || IOS_TARGET
00037 // Instance class name property
00038 @property (retain, readonly, getter=className) NSString *className;
00039 // Number data type property
00040 @property (assign, readonly, getter=type) SCStandardType type;
00041 #endif
00042 
00043 #pragma mark -
00044 #pragma mark Creating NSNumber Object
00045 
00051 + (NSNumber *)numberWithNumber:(NSNumber *)number;
00052 
00058 + (NSNumber *)numberWithByte:(SCByte)byte;
00059 
00065 + (NSNumber *)numberWithUnsignedByte:(SCUByte)byte;
00066 
00073 + (NSNumber *)numberWithDataDictionary:(NSDictionary *)dictionary;
00074 
00081 + (NSNumber *)numberWithDataDictionaryFromFile:(NSString *)path;
00082 
00088 + (NSNumber *)numberWithContentsOfSerializedFile:(NSString *)path;
00089 
00097 + (NSNumber *)numberWithStream:(SCStream *)stream;
00098 
00105 + (NSNumber *)numberWithFileStream:(NSString *)path;
00106 
00107 #pragma mark -
00108 #pragma mark Initializing NSNumber Object
00109 
00115 - (id)initWithNumber:(NSNumber *)number;
00116 
00122 - (id)initWithByte:(SCByte)byte;
00123 
00129 - (id)initWithUnsignedByte:(SCUByte)byte;
00130 
00137 - (id)initWithDataDictionary:(NSDictionary *)dictionary;
00138 
00145 - (id)initWithDataDictionaryFromFile:(NSString *)path;
00146 
00152 - (id)initWithContentsOfSerializedFile:(NSString *)path;
00153 
00161 - (id)initWithStream:(SCStream *)stream;
00162 
00169 - (id)initWithFileStream:(NSString *)path;
00170     
00171 #pragma mark -
00172 #pragma mark Supporting Data Dictionaries
00173 
00178 - (void)writeToDataDictionary:(NSMutableDictionary *)dictionary;
00179 
00186 - (void)writeToDataDictionaryFile:(NSString *)path atomically:(BOOL)atomically;
00187 
00192 - (void)writeToDataDictionaryFile:(NSString *)path;
00193 
00198 - (NSDictionary *)dataDictionary;
00199 
00200 #pragma mark -
00201 #pragma mark Supportiting Serialized Files
00202 
00208 - (BOOL)writeContentsToSerializedFile:(NSString *)path;
00209 
00210 #pragma mark -
00211 #pragma mark Supporting Streams
00212 
00219 - (void)writeToStream:(SCStream *)stream;
00220 
00226 - (void)writeToFileStream:(NSString *)path;
00227 
00233 - (void)appendToFileStream:(NSString *)path;
00234     
00235 #pragma mark -
00236 #pragma mark Supporting Collections
00237 
00242 - (id<SCCollectionProtocol>)copyObject;
00243 
00254 - (SCComparisonResult)compareWithObject:(id<SCCollectionProtocol>)object;
00255 
00256 #pragma mark -
00257 #pragma mark Detecting NSNumber Object Type
00258 
00263 - (SCStandardType)type;
00264 
00265 #pragma mark -
00266 #pragma mark Accessing Values
00267 
00272 - (SCByte)byteValue;
00273 
00278 - (SCUByte)unsignedByteValue;
00279 
00280 #pragma mark -
00281 #pragma mark Comparing Numbers
00282 
00288 - (BOOL)isEqualToByte:(SCByte)byte;
00289 
00295 - (BOOL)isEqualToShort:(SCShort)sht;
00296 
00302 - (BOOL)isEqualToInt:(SCInteger)integer;
00303 
00309 - (BOOL)isEqualToLongLong:(SCLong)longint;
00310 
00316 - (BOOL)isEqualToUnsignedByte:(SCUByte)byte;
00317 
00323 - (BOOL)isEqualToUnsignedShort:(SCUShort)sht;
00324 
00330 - (BOOL)isEqualToUnsignedInt:(SCUInteger)integer;
00331 
00337 - (BOOL)isEqualToUnsignedLongLong:(SCULong)longint;
00338 
00344 - (BOOL)isEqualToFloat:(SCFloat)flt;
00345 
00351 - (BOOL)isEqualToDouble:(SCDouble)dbl;
00352 
00358 - (BOOL)isEqualToChar:(char)chr;
00359 
00365 - (BOOL)isEqualToBool:(BOOL)boolean;
00366 
00367 #pragma mark -
00368 #pragma mark Other Methods
00369 
00374 - (NSString *)className;
00375 
00376 @end
 All Classes Files Functions Typedefs Enumerations Enumerator Defines