Samond Classes Library 1.2.1-RELEASE build 181
NSNumber+SCNumber.h
См. документацию.
1 //
2 // NSNumber+SCNumber.h
3 // scl
4 //
5 // Created by Viacheslav Smolensky on 17.04.12.
6 // Copyright (c) 2007 - 2017 by Samond Development Corporation. All rights reserved.
7 //
8 
24 #import <Foundation/Foundation.h>
25 #import <scl/NSObject+SCObject.h>
26 #import <scl/SCTypes.h>
27 
28 #pragma mark -
29 #pragma mark Class Constants
30 
34 #define NSNumberClass @"NSNumber"
35 
36 
57 
73 @property (nonatomic, assign, readonly, getter=byteValue) SCByte byteValue;
74 
79 @property (nonatomic, assign, readonly, getter=unsignedByteValue) SCUByte unsignedByteValue;
80 
85 @property (nonatomic, assign, readonly, getter=unicharValue) unichar unicharValue;
86 
91 @property (nonatomic, assign, readonly, getter=binaryString) NSString *binaryString;
92 
97 @property (nonatomic, retain, readonly, getter=octalString) NSString *octalString;
98 
103 @property (nonatomic, retain, readonly, getter=decimalString) NSString *decimalString;
104 
109 @property (nonatomic, retain, readonly, getter=string) NSString *string;
110 
115 @property (nonatomic, retain, readonly, getter=hexadecimalString) NSString *hexadecimalString;
116 
121 @property (nonatomic, retain, readonly, getter=boolString) NSString *boolString;
122 
127 @property (nonatomic, retain, readonly, getter=floatString) NSString *floatString;
128 
134 @property (nonatomic, retain, readonly, getter=doubleString) NSString *doubleString;
135 
138 #pragma mark -
139 #pragma mark Creating Numbers
140 + (instancetype)numberWithCoder:(NSCoder *)coder;
141 + (instancetype)numberWithContentsOfSerializedFile:(NSString *)path;
142 + (instancetype)numberWithDataDictionary:(NSDictionary *)dictionary;
143 + (instancetype)numberWithDataDictionaryFromFile:(NSString *)path;
144 + (instancetype)numberWithStream:(SCStream *)stream;
145 + (instancetype)numberWithFileStream:(NSString *)path;
146 
147 + (instancetype)numberWithNumber:(NSNumber *)number;
148 + (instancetype)numberWithByte:(SCByte)byte;
149 + (instancetype)numberWithUnsignedByte:(SCUByte)byte;
150 + (instancetype)numberWithUnichar:(unichar)chr;
151 + (instancetype)numberWithBinaryString:(NSString *)string;
152 + (instancetype)numberWithOctalString:(NSString *)string;
153 + (instancetype)numberWithDecimalString:(NSString *)string;
154 + (instancetype)numberWithHexadecimalString:(NSString *)string;
155 + (instancetype)numberWithString:(NSString *)string;
156 + (instancetype)numberWithBoolString:(NSString *)string;
157 + (instancetype)numberWithFloatString:(NSString *)string;
158 + (instancetype)numberWithDoubleString:(NSString *)string;
159 
160 #pragma mark -
161 #pragma mark Initializing Numbers
162 - (instancetype)initWithNumber:(NSNumber *)number;
163 - (instancetype)initWithByte:(SCByte)byte;
164 - (instancetype)initWithUnsignedByte:(SCUByte)byte;
165 - (instancetype)initWithUnichar:(unichar)chr;
166 - (instancetype)initWithBinaryString:(NSString *)string;
167 - (instancetype)initWithOctalString:(NSString *)string;
168 - (instancetype)initWithDecimalString:(NSString *)string;
169 - (instancetype)initWithHexadecimalString:(NSString *)string;
170 - (instancetype)initWithString:(NSString *)string;
171 - (instancetype)initWithBoolString:(NSString *)string;
172 - (instancetype)initWithFloatString:(NSString *)string;
173 - (instancetype)initWithDoubleString:(NSString *)string;
174 
175 #pragma mark -
176 #pragma mark Instance Properties
177 - (SCByte)byteValue;
179 - (unichar)unicharValue;
180 
181 - (NSString *)binaryString;
182 - (NSString *)octalString;
183 - (NSString *)decimalString;
184 - (NSString *)string;
185 - (NSString *)hexadecimalString;
186 - (NSString *)boolString;
187 - (NSString *)floatString;
188 - (NSString *)doubleString;
189 
190 #pragma mark -
191 #pragma mark Number Type Detection
193 
194 #pragma mark -
195 #pragma mark Comparing Numbers
196 - (BOOL)isEqualToByte:(SCByte)value;
197 - (BOOL)isEqualToUnsignedByte:(SCUByte)value;
198 - (BOOL)isEqualToShort:(SCShort)value;
199 - (BOOL)isEqualToUnsignedShort:(SCUShort)value;
200 - (BOOL)isEqualToInteger:(SCInteger)value;
201 - (BOOL)isEqualToUnsignedInteger:(SCUInteger)value;
202 - (BOOL)isEqualToLongLong:(SCLong)value;
203 - (BOOL)isEqualToUnsignedLongLong:(SCULong)value;
204 - (BOOL)isEqualToChar:(char)value;
205 - (BOOL)isEqualToUnichar:(unichar)value;
206 - (BOOL)isEqualToBool:(BOOL)value;
207 - (BOOL)isEqualToFloat:(SCFloat)value;
208 - (BOOL)isEqualToDouble:(SCDouble)value;
209 
210 #pragma mark -
211 #pragma mark Comparing Numbers and Strings
212 - (BOOL)isEqualToBinaryString:(NSString *)string;
213 - (BOOL)isEqualToOctalString:(NSString *)string;
214 - (BOOL)isEqualToDecimalString:(NSString *)string;
215 - (BOOL)isEqualToHexadecimalString:(NSString *)string;
216 - (BOOL)isEqualToString:(NSString *)string;
217 - (BOOL)isEqualToBoolString:(NSString *)string;
218 - (BOOL)isEqualToFloatString:(NSString *)string;
219 - (BOOL)isEqualToDoubleString:(NSString *)string;
220 
221 @end
uint64_t SCULong
Definition: SCTypes.h:82
int16_t SCShort
Definition: SCTypes.h:46
int64_t SCLong
Definition: SCTypes.h:58
Расширение функциональности стандартного класса NSNumber.
Definition: NSNumber+SCNumber.h:56
NSString * decimalString
Definition: NSNumber+SCNumber.h:103
NSString * doubleString
Definition: NSNumber+SCNumber.h:134
NSString * floatString
Definition: NSNumber+SCNumber.h:127
int32_t SCInteger
Definition: SCTypes.h:52
uint32_t SCUInteger
Definition: SCTypes.h:76
SCStandardType type()
Definition: NSNumber+SCNumber.m:896
int8_t SCByte
Definition: SCTypes.h:40
uint16_t SCUShort
Definition: SCTypes.h:70
uint8_t SCUByte
Definition: SCTypes.h:64
unichar unicharValue
Definition: NSNumber+SCNumber.h:85
SCUByte unsignedByteValue
Definition: NSNumber+SCNumber.h:79
SCByte byteValue
Definition: NSNumber+SCNumber.h:73
NSString * binaryString
Definition: NSNumber+SCNumber.h:91
double SCDouble
Definition: SCTypes.h:94
NSString * boolString
Definition: NSNumber+SCNumber.h:121
float SCFloat
Definition: SCTypes.h:88
enum _SCStandardType SCStandardType
Стандартный тип данных.
Definition: SCTypes.h:212
NSString * string
Definition: NSNumber+SCNumber.h:109
NSString * octalString
Definition: NSNumber+SCNumber.h:97
NSString * hexadecimalString
Definition: NSNumber+SCNumber.h:115
Абстрактный класс потоков библиотеки
Definition: SCStream.h:242