Samond Classes Library 1.1.6-RELEASE build 132

SCString.h

Go to the documentation of this file.
00001 //
00002 //  SCString.h
00003 //  scl
00004 //
00005 //  Created by Viacheslav Smolensky on 19.08.07.
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/SCDictionaryObjectProtocol.h>
00019 #import <scl/SCCodingProtocol.h>
00020 #import <scl/SCStreamProtocol.h>
00021 #import <scl/SCCollectionProtocol.h>
00022 #import <scl/SCNotSupportedException.h>
00023 
00024 #define NSStringClass @"NSString" ///< NSString class name
00025 
00026 #pragma mark -
00027 #pragma mark Category NSString(SCString) types
00028 
00033 enum _SCIntegerBase {
00034         SCBinBase = 2,  
00035         SCOctBase = 8,  
00036         SCDecBase = 10, 
00037         SCHexBase = 16  
00038 };
00044 typedef enum _SCIntegerBase SCIntegerBase;
00045 
00046 #pragma mark -
00047 #pragma mark Boolean constants
00048 
00049 #define SC_BOOL_YES   @"YES"    ///< Symbolic representation of the logical constant YES
00050 #define SC_BOOL_NO    @"NO"             ///< Symbolic representation of the logical constant NO
00051 #define SC_BOOL_TRUE  @"TRUE"   ///< Symbolic representation of the logical constant TRUE
00052 #define SC_BOOL_FALSE @"FALSE"  ///< Symbolic representation of the logical constant FALSE
00053 #define SC_BOOL_ON    @"ON"             ///< Symbolic representation of the logical constant ON
00054 #define SC_BOOL_OFF   @"OFF"    ///< Symbolic representation of the logical constant OFF
00055 
00056 #pragma mark -
00057 #pragma mark String constans
00058 
00059 #define SC_STR_EMPTY   @""              ///< Emty string constant
00060 #define SC_STR_SPACE   @" "             ///< Constant of the string contains one space character
00061 #define SC_STR_DOT     @"."     ///< Constant of the string contains one dot character
00062 
00063 #pragma mark Digital string constants
00064 
00065 #define SC_STR_ZERO     @"0"    ///< Digit 0 string constant
00066 #define SC_STR_ONE      @"1"    ///< Digit 1 string constant
00067 #define SC_STR_TWO      @"2"    ///< Digit 2 string constant
00068 #define SC_STR_THREE    @"3"    ///< Digit 3 string constant
00069 #define SC_STR_FOUR     @"4"    ///< Digit 4 string constant
00070 #define SC_STR_FIVE     @"5"    ///< Digit 5 string constant
00071 #define SC_STR_SIX      @"6"    ///< Digit 6 string constant
00072 #define SC_STR_SEVEN    @"7"    ///< Digit 7 string constant
00073 #define SC_STR_EIGHT    @"8"    ///< Digit 8 string constant
00074 #define SC_STR_NINE     @"9"    ///< Digit 9 string constant
00075 
00076 #pragma mark Letter string constants
00077 
00078 #define SC_STR_ENG_UP_A     @"A"    ///< Letter "A" string constant
00079 #define SC_STR_ENG_UP_B     @"B"    ///< Letter "B" string constant
00080 #define SC_STR_ENG_UP_C     @"C"    ///< Letter "C" string constant
00081 #define SC_STR_ENG_UP_D     @"D"    ///< Letter "D" string constant
00082 #define SC_STR_ENG_UP_E     @"E"    ///< Letter "E" string constant
00083 #define SC_STR_ENG_UP_F     @"F"    ///< Letter "F" string constant
00084 #define SC_STR_ENG_UP_G     @"G"    ///< Letter "G" string constant
00085 #define SC_STR_ENG_UP_H     @"H"    ///< Letter "H" string constant
00086 #define SC_STR_ENG_UP_I     @"I"    ///< Letter "I" string constant
00087 #define SC_STR_ENG_UP_J     @"J"    ///< Letter "J" string constant
00088 #define SC_STR_ENG_UP_K     @"K"    ///< Letter "K" string constant
00089 #define SC_STR_ENG_UP_L     @"L"    ///< Letter "L" string constant
00090 #define SC_STR_ENG_UP_M     @"M"    ///< Letter "M" string constant
00091 #define SC_STR_ENG_UP_N     @"N"    ///< Letter "N" string constant
00092 #define SC_STR_ENG_UP_O     @"O"    ///< Letter "O" string constant
00093 #define SC_STR_ENG_UP_P     @"P"    ///< Letter "P" string constant
00094 #define SC_STR_ENG_UP_Q     @"Q"    ///< Letter "Q" string constant
00095 #define SC_STR_ENG_UP_R     @"R"    ///< Letter "R" string constant
00096 #define SC_STR_ENG_UP_S     @"S"    ///< Letter "S" string constant
00097 #define SC_STR_ENG_UP_T     @"T"    ///< Letter "T" string constant
00098 #define SC_STR_ENG_UP_U     @"U"    ///< Letter "U" string constant
00099 #define SC_STR_ENG_UP_V     @"V"    ///< Letter "V" string constant
00100 #define SC_STR_ENG_UP_W     @"W"    ///< Letter "W" string constant
00101 #define SC_STR_ENG_UP_X     @"X"    ///< Letter "X" string constant
00102 #define SC_STR_ENG_UP_Y     @"Y"    ///< Letter "Y" string constant
00103 #define SC_STR_ENG_UP_Z     @"Z"    ///< Letter "Z" string constant
00104 
00105 #pragma mark -
00106 #pragma mark Format string constants
00107 
00108 #define SC_FMT_OBJECT         @"%@"                      ///< Class instance information format string constant
00109 #define SC_FMT_OCTAL          @"%qo"             ///< Octal representation format string constant
00110 #define SC_FMT_DECIMAL        @"%qu"             ///< Decimal representation format string constant
00111 #define SC_FMT_HEX_LO         @"%qx"             
00112 
00113 #define SC_FMT_HEX_UP         @"%qX"             
00114 
00115 #define SC_FMT_SIGNED_INT     @"%d"                      
00116 
00117 #define SC_FMT_SHORT          @"%hi"             ///< Signed short representation format string constant
00118 #define SC_FMT_DOUBLE         @"%f"                      ///< Double representation format string constant
00119 #define SC_FMT_UNSIGNED_SHORT @"%hu"             
00120 
00121 #define SC_FMT_SIGNED_LONG    @"%qi"             
00122 
00123 #define SC_FMT_POINTER        @"%p"                      ///< Pointer representation format string constant
00124 #define SC_FMT_NETIP          @"%u.%u.%u.%u" ///< IP-address format string constant
00125 #define SC_FMT_NETLEN         @"/%u"             ///< Subnet prefix format string constant
00126 
00127 #pragma mark -
00128 #pragma mark Character constants
00129 
00130 #define SC_CHR_SPACE ' '        ///< Space character constant
00131 #define SC_CHR_TAB   '\t'       ///< Tab character constant
00132 #define SC_CHR_CR    '\n'       ///< New line character constant
00133 #define SC_CHR_DOT   '.'    ///< Dot character constant
00134 
00135 #pragma mark Digital character constants
00136 
00137 #define SC_CHR_ZERO     '0'    ///< Digit 0 character constant
00138 #define SC_CHR_ONE      '1'    ///< Digit 1 character constant
00139 #define SC_CHR_TWO      '2'    ///< Digit 2 character constant
00140 #define SC_CHR_THREE    '3'    ///< Digit 3 character constant
00141 #define SC_CHR_FOUR     '4'    ///< Digit 4 character constant
00142 #define SC_CHR_FIVE     '5'    ///< Digit 5 character constant
00143 #define SC_CHR_SIX      '6'    ///< Digit 6 character constant
00144 #define SC_CHR_SEVEN    '7'    ///< Digit 7 character constant
00145 #define SC_CHR_EIGHT    '8'    ///< Digit 8 character constant
00146 #define SC_CHR_NINE     '9'    ///< Digit 9 character constant
00147 
00148 #pragma mark Letter character constants
00149 
00150 #define SC_CHR_ENG_UP_A     'A'    ///< Letter "A" character constant
00151 #define SC_CHR_ENG_UP_B     'B'    ///< Letter "B" character constant
00152 #define SC_CHR_ENG_UP_C     'C'    ///< Letter "C" character constant
00153 #define SC_CHR_ENG_UP_D     'D'    ///< Letter "D" character constant
00154 #define SC_CHR_ENG_UP_E     'E'    ///< Letter "E" character constant
00155 #define SC_CHR_ENG_UP_F     'F'    ///< Letter "F" character constant
00156 #define SC_CHR_ENG_UP_G     'G'    ///< Letter "G" character constant
00157 #define SC_CHR_ENG_UP_H     'H'    ///< Letter "H" character constant
00158 #define SC_CHR_ENG_UP_I     'I'    ///< Letter "I" character constant
00159 #define SC_CHR_ENG_UP_J     'J'    ///< Letter "J" character constant
00160 #define SC_CHR_ENG_UP_K     'K'    ///< Letter "K" character constant
00161 #define SC_CHR_ENG_UP_L     'L'    ///< Letter "L" character constant
00162 #define SC_CHR_ENG_UP_M     'M'    ///< Letter "M" character constant
00163 #define SC_CHR_ENG_UP_N     'N'    ///< Letter "N" character constant
00164 #define SC_CHR_ENG_UP_O     'O'    ///< Letter "O" character constant
00165 #define SC_CHR_ENG_UP_P     'P'    ///< Letter "P" character constant
00166 #define SC_CHR_ENG_UP_Q     'Q'    ///< Letter "Q" character constant
00167 #define SC_CHR_ENG_UP_R     'R'    ///< Letter "R" character constant
00168 #define SC_CHR_ENG_UP_S     'S'    ///< Letter "S" character constant
00169 #define SC_CHR_ENG_UP_T     'T'    ///< Letter "T" character constant
00170 #define SC_CHR_ENG_UP_U     'U'    ///< Letter "U" character constant
00171 #define SC_CHR_ENG_UP_V     'V'    ///< Letter "V" character constant
00172 #define SC_CHR_ENG_UP_W     'W'    ///< Letter "W" character constant
00173 #define SC_CHR_ENG_UP_X     'X'    ///< Letter "X" character constant
00174 #define SC_CHR_ENG_UP_Y     'Y'    ///< Letter "Y" character constant
00175 #define SC_CHR_ENG_UP_Z     'Z'    ///< Letter "Z" character constant
00176 
00177 @class SCArray;
00178 
00179 #pragma mark -
00180 
00189 @interface NSString(SCString) <SCDictionaryObjectProtocol, SCCodingProtocol, SCStreamProtocol,
00190                                                            SCCollectionProtocol>
00191 #pragma mark -
00192 #pragma mark Category properties
00193 #if (__MAC_OS_X_VERSION_MIN_REQUIRED > 1040) || IOS_TARGET
00194 // Instance class name property
00195 @property (retain, readonly, getter=className) NSString *className;
00196 #endif
00197 
00198 #pragma mark -
00199 #pragma mark Creating and Initializing Strings
00200 
00208 + (NSString *)stringWithLength:(SCUInteger)length character:(unichar)chr;
00209 
00215 + (NSString *)stringWithLength:(SCUInteger)length;
00216 
00222 + (NSString *)stringWithUnichar:(unichar)chr;
00223 
00229 + (NSString *)stringWithPointer:(void *)pointer;
00230 
00236 + (NSString *)stringWithID:(id)object;
00237 
00243 + (NSString *)stringWithDataDictionary:(NSDictionary *)dictionary;
00244 
00250 + (NSString *)stringWithDataDictionaryFromFile:(NSString *)path;
00251 
00257 + (NSString *)stringWithCoder:(NSCoder *)coder;
00258 
00264 + (NSString *)stringWithContentsOfSerializedFile:(NSString *)path;
00265 
00273 + (NSString *)stringWithStream:(SCStream *)stream;
00274 
00281 + (NSString *)stringWithFileStream:(NSString *)path;
00282 
00289 - (id)initWithLength:(SCUInteger)length character:(unichar)chr;
00290 
00296 - (id)initWithLength:(SCUInteger)length;
00297 
00303 - (id)initWithUnichar:(unichar)chr;
00304 
00310 - (id)initWithPointer:(void *)pointer;
00311 
00317 - (id)initWithID:(id)object;
00318 
00324 - (id)initWithDataDictionary:(NSDictionary *)dictionary;
00325 
00331 - (id)initWithDataDictionaryFromFile:(NSString *)path;
00332 
00338 - (id)initWithContentsOfSerializedFile:(NSString *)path;
00339 
00347 - (id)initWithStream:(SCStream *)stream;
00348 
00355 - (id)initWithFileStream:(NSString *)path;
00356 
00357 #pragma mark -
00358 #pragma mark Comparing Strings
00359 
00367 - (BOOL)isEqualToStrings:(NSString *)string, ...;
00368 
00369 #pragma mark -
00370 #pragma mark Dividing and Replacing Strings and Parts of Strings
00371 
00377 - (NSString *)leftPartOfString:(SCUInteger)characters;        
00378 
00384 - (NSString *)rightPartOfString:(SCUInteger)characters;       
00385 
00391 - (NSString *)skipLeftPart:(SCUInteger)characters;            
00392 
00398 - (NSString *)skipRightPart:(SCUInteger)characters;           
00399 
00405 - (NSString *)stringWithInsertedString:(NSString *)str;
00406 
00413 - (NSString *)stringWithInsertedString:(NSString *)str index:(SCUInteger)index;
00414 
00419 - (NSString *)ltrim;                                            
00420 
00425 - (NSString *)rtrim;
00426 
00431 - (NSString *)trim;
00432 
00437 - (NSString *)normalizedString;
00438 
00443 - (SCUInteger)wordsCount;
00444 
00450 - (NSString *)word:(SCUInteger)wordIndex;
00451 
00456 - (NSString *)firstWord;
00457 
00462 - (NSString *)endOfString;
00463 
00470 - (NSString *)stringWithReplacedSubstringToIndex:(SCUInteger)index string:(NSString *)str;    
00471 
00478 - (NSString *)stringWithReplacedSubstringFromIndex:(SCUInteger)index string:(NSString *)str;  
00479 
00486 - (NSString *)stringWithReplacedSubstringWithRange:(NSRange)range string:(NSString *)str;      
00487 
00497 - (NSString *)stringWithReplacedSubstring:(NSString *)substring
00498                                                                    string:(NSString *)str
00499                                                   caseInsensitive:(BOOL)value;
00500 
00508 - (NSString *)stringWithReplacedSubstring:(NSString *)substring string:(NSString *)str;         
00509 
00515 - (NSString *)stringWithDeletedSubstringToIndex:(SCUInteger)index;                            
00516 
00522 - (NSString *)stringWithDeletedSubstringFromIndex:(SCUInteger)index;
00523 
00529 - (NSString *)stringWithDeletedSubstringWithRange:(NSRange)range;
00530 
00539 - (NSString *)stringWithDeletedSubstring:(NSString *)str caseInsensitive:(BOOL)value;
00540 
00547 - (NSString *)stringWithDeletedSubstring:(NSString *)str;
00548 
00554 - (NSString *)stringWithDeletedSubstringToRange:(NSRange)range;
00555 
00564 - (SCInteger)substringCount:(NSString *)str caseInsensitive:(BOOL)value;
00565 
00572 - (SCInteger)substringCount:(NSString *)str;
00573 
00582 - (BOOL)substringExists:(NSString *)str caseInsensitive:(BOOL)value;
00583 
00590 - (BOOL)substringExists:(NSString *)str;
00591 
00597 - (BOOL)rangeIsCorrect:(NSRange)range;
00598 
00607 - (SCUInteger)indexOfSubstring:(NSString *)substring caseInsensitive:(BOOL)value;
00608 
00615 - (SCUInteger)indexOfSubstring:(NSString *)substring;
00616 
00625 - (SCArray *)indexesOfSubstring:(NSString *)substring caseInsensitive:(BOOL)value;
00626 
00633 - (SCArray *)indexesOfSubstring:(NSString *)substring;
00634 
00635 #pragma mark -
00636 #pragma mark Expanding Strings
00637 
00644 - (NSString *)expandLeftStringToLength:(SCUInteger)length character:(unichar)chr;
00645 
00651 - (NSString *)expandLeftStringToLength:(SCUInteger)length;
00652 
00658 - (NSString *)expandDigitalStringToLength:(SCUInteger)length;
00659 
00666 - (NSString *)expandRightStringToLength:(SCUInteger)length character:(unichar)chr;
00667 
00673 - (NSString *)expandRightStringToLength:(SCUInteger)length;
00674 
00682 - (id)initExpandedLeft:(NSString *)str length:(SCUInteger)length character:(unichar)chr;
00683 
00690 - (id)initExpandedLeft:(NSString *)str length:(SCUInteger)length;
00691 
00698 - (id)initExpandedDigital:(NSString *)str length:(SCUInteger)length;
00699 
00707 - (id)initExpandedRight:(NSString *)str length:(SCUInteger)length character:(unichar)chr;
00708 
00715 - (id)initExpandedRight:(NSString *)str length:(SCUInteger)length;
00716 
00725 + (NSString *)stringExpandedLeft:(NSString *)str 
00726                           length:(SCUInteger)length 
00727                        character:(unichar)chr;
00728 
00736 + (NSString *)stringExpandedLeft:(NSString *)str length:(SCUInteger)length;
00737 
00745 + (NSString *)stringExpandedDigital:(NSString *)str length:(SCUInteger)length;
00746 
00755 + (NSString *)stringExpandedRight:(NSString *)str 
00756                            length:(SCUInteger)length 
00757                         character:(unichar)chr;
00758 
00766 + (NSString *)stringExpandedRight:(NSString *)str length:(SCUInteger)length;
00767 
00768 #pragma mark -
00769 #pragma mark Reversing Strings
00770 
00775 - (NSString *)reverse;
00776 
00782 - (id)initWithReversedString:(NSString *)str;
00783 
00789 + (NSString *)stringWithReversedString:(NSString *)str;
00790 
00791 #pragma mark -
00792 #pragma mark Grouping Parts in Strings
00793 
00801 - (NSString *)stringWithGroups:(SCUInteger)group delimiter:(unichar)chr;
00802 
00808 - (NSString *)stringWithGroupsDelimiter:(unichar)chr;
00809 
00816 - (NSString *)stringWithGroups:(SCUInteger)group;
00817 
00823 - (NSString *)stringWithGroups;
00824 
00833 - (id)initWithString:(NSString *)str groups:(SCUInteger)group delimiter:(unichar)chr;
00834 
00842 - (id)initWithString:(NSString *)str groupsDelimiter:(unichar)chr;
00843 
00851 - (id)initWithString:(NSString *)str groups:(SCUInteger)group;
00852 
00859 - (id)initWithStringGroups:(NSString *)str;
00860 
00869 + (NSString *)stringWithString:(NSString *)str groups:(SCUInteger)group delimiter:(unichar)chr;
00870 
00878 + (NSString *)stringWithString:(NSString *)str groupsDelimiter:(unichar)chr;
00879 
00887 + (NSString *)stringWithString:(NSString *)str groups:(SCUInteger)group;
00888 
00895 + (NSString *)stringWithStringGroups:(NSString *)str;
00896 
00897 #pragma mark -
00898 #pragma mark Dividing Strings by Using Separators
00899 
00907 - (NSString *)insertSeparators:(NSString *)separator leftOver:(SCUInteger)over;
00908 
00915 - (NSString *)insertSpacesFromLeftOver:(SCUInteger)over;
00916 
00924 - (NSString *)insertSeparators:(NSString *)separator rightOver:(SCUInteger)over;
00925 
00932 - (NSString *)insertSpacesFromRightOver:(SCUInteger)over;
00933 
00942 - (NSString *)initWithString:(NSString *)source 
00943                   separators:(NSString *)separator 
00944                     leftOver:(SCUInteger)over;
00945 
00953 - (NSString *)initWithString:(NSString *)source spacesFromLeftOver:(SCUInteger)over;
00954 
00963 - (NSString *)initWithString:(NSString *)source 
00964                   separators:(NSString *)separator
00965                    rightOver:(SCUInteger)over;
00966 
00974 - (NSString *)initWithString:(NSString *)source spacesFromRightOver:(SCUInteger)over;
00975 
00984 + (NSString *)stringWithString:(NSString *)source 
00985                     separators:(NSString *)separator 
00986                       leftOver:(SCUInteger)over;
00987 
00995 + (NSString *)stringWithString:(NSString *)source spacesFromLeftOver:(SCUInteger)over;
00996 
01005 + (NSString *)stringWithString:(NSString *)source 
01006                     separators:(NSString *)separator 
01007                      rightOver:(SCUInteger)over;
01008 
01016 + (NSString *)stringWithString:(NSString *)source spacesFromRightOver:(SCUInteger)over;
01017 
01018 #pragma mark -
01019 #pragma mark Getting Text Representation of Integer Values
01020 
01026 - (BOOL)isIntegerStringWithBase:(SCIntegerBase)base;
01027 
01033 - (SCULong)integerWithBase:(SCIntegerBase)base;
01034 
01045 - (NSString *)initWithInteger:(SCULong)integer
01046                          base:(SCIntegerBase)base
01047                      capacity:(SCCapacity)capacity
01048                     uppercase:(BOOL)uppercase
01049                    separators:(BOOL)separators;
01050 
01060 - (NSString *)initWithInteger:(SCULong)integer
01061                          base:(SCIntegerBase)base
01062                      capacity:(SCCapacity)capacity
01063                     uppercase:(BOOL)uppercase;
01064 
01074 - (NSString *)initWithInteger:(SCULong)integer
01075                          base:(SCIntegerBase)base
01076                     uppercase:(BOOL)uppercase
01077                    separators:(BOOL)separators;
01078 
01087 - (NSString *)initWithInteger:(SCULong)integer 
01088                          base:(SCIntegerBase)base 
01089                     uppercase:(BOOL)uppercase;
01090 
01100 - (NSString *)initWithInteger:(SCULong)integer
01101                          base:(SCIntegerBase)base
01102                      capacity:(SCCapacity)capacity
01103                    separators:(BOOL)separators;
01104 
01113 - (NSString *)initWithInteger:(SCULong)integer
01114                                                  base:(SCIntegerBase)base
01115                                          capacity:(SCCapacity)capacity;
01116 
01125 - (NSString *)initWithInteger:(SCULong)integer base:(SCIntegerBase)base separators:(BOOL)separators;
01126 
01134 - (NSString *)initWithInteger:(SCULong)integer base:(SCIntegerBase)base;
01135 
01142 + (BOOL)characterIsInteger:(unichar)chr base:(SCIntegerBase)base;
01143 
01149 + (SCInteger)characterToInteger:(unichar)chr;
01150 
01161 + (NSString *)stringWithInteger:(SCULong)integer
01162                            base:(SCIntegerBase)base
01163                        capacity:(SCCapacity)capacity
01164                       uppercase:(BOOL)uppercase
01165                      separators:(BOOL)separators;
01166 
01176 + (NSString *)stringWithInteger:(SCULong)integer
01177                            base:(SCIntegerBase)base
01178                        capacity:(SCCapacity)capacity
01179                       uppercase:(BOOL)uppercase;
01180 
01190 + (NSString *)stringWithInteger:(SCULong)integer
01191                            base:(SCIntegerBase)base
01192                       uppercase:(BOOL)uppercase
01193                      separators:(BOOL)separators;
01194 
01203 + (NSString *)stringWithInteger:(SCULong)integer base:(SCIntegerBase)base uppercase:(BOOL)uppercase;
01204 
01214 + (NSString *)stringWithInteger:(SCULong)integer
01215                            base:(SCIntegerBase)base
01216                        capacity:(SCCapacity)capacity 
01217                      separators:(BOOL)separators;
01218 
01227 + (NSString *)stringWithInteger:(SCULong)integer
01228                                                    base:(SCIntegerBase)base
01229                                            capacity:(SCCapacity)capacity;
01230 
01239 + (NSString *)stringWithInteger:(SCULong)integer
01240                                                    base:(SCIntegerBase)base
01241                                          separators:(BOOL)separators;
01242 
01250 + (NSString *)stringWithInteger:(SCULong)integer base:(SCIntegerBase)base;
01251 
01252 #pragma mark -
01253 #pragma mark Getting Text Representation of Binary Integer Values
01254 
01259 - (BOOL)isBinaryString;
01260 
01265 - (SCULong)binaryInteger;
01266 
01275 - (NSString *)initWithBinaryInteger:(SCULong)integer
01276                                                    capacity:(SCCapacity)capacity
01277                                                  separators:(BOOL)separators;
01278 
01286 - (NSString *)initWithBinaryInteger:(SCULong)integer capacity:(SCCapacity)capacity;
01287 
01295 - (NSString *)initWithBinaryInteger:(SCULong)integer separators:(BOOL)separators;
01296 
01303 - (NSString *)initWithBinaryInteger:(SCULong)integer;
01304 
01310 + (BOOL)characterIsBinaryInteger:(unichar)chr;
01311 
01320 + (NSString *)stringWithBinaryInteger:(SCULong)integer
01321                              capacity:(SCCapacity)capacity
01322                            separators:(BOOL)separators;
01323 
01331 + (NSString *)stringWithBinaryInteger:(SCULong)integer capacity:(SCCapacity)capacity;
01332 
01340 + (NSString *)stringWithBinaryInteger:(SCULong)integer separators:(BOOL)separators;
01341 
01348 + (NSString *)stringWithBinaryInteger:(SCULong)integer;
01349 
01350 #pragma mark -
01351 #pragma mark Getting Text Representation of Octal Integer Values
01352 
01357 - (BOOL)isOctalString;
01358 
01363 - (SCULong)octalInteger;
01364 
01372 - (NSString *)initWithOctalInteger:(SCULong)integer separators:(BOOL)separators;
01373 
01379 - (NSString *)initWithOctalInteger:(SCULong)integer;
01380 
01386 + (BOOL)characterIsOctalInteger:(unichar)chr;
01387 
01395 + (NSString *)stringWithOctalInteger:(SCULong)integer separators:(BOOL)separators;
01396 
01403 + (NSString *)stringWithOctalInteger:(SCULong)integer;
01404 
01405 #pragma mark -
01406 #pragma mark Getting Text Representation of Decimal Integer Values
01407 
01412 - (BOOL)isDecimalString;
01413 
01418 - (BOOL)isIntegerString;
01419 
01424 - (SCULong)decimalInteger;
01425 
01430 - (SCULong)integer;
01431 
01439 - (NSString *)initWithDecimalInteger:(SCULong)integer separators:(BOOL)separators;
01440 
01447 - (NSString *)initWithDecimalInteger:(SCULong)integer;
01448 
01456 - (NSString *)initWithDecimalInteger:(SCULong)integer separator:(NSString *)separator;
01457 
01463 - (id)initWithSignedInteger:(SCInteger)integer;
01464 
01470 - (id)initWithSignedShort:(short)integer;
01471 
01477 - (id)initWithUnsignedShort:(unsigned short)integer;
01478 
01484 - (id)initWithSignedLong:(SCLong)longint;
01485 
01491 + (BOOL)characterIsDecimalInteger:(unichar)chr;
01492 
01498 + (BOOL)characterIsInteger:(unichar)chr;
01499 
01507 + (NSString *)stringWithDecimalInteger:(SCULong)integer separators:(BOOL)separators;
01508 
01515 + (NSString *)stringWithDecimalInteger:(SCULong)integer;
01516 
01524 + (NSString *)stringWithDecimalInteger:(SCULong)integer separator:(NSString *)separator;
01525 
01531 + (NSString *)stringWithSignedInteger:(SCInteger)integer;
01532 
01538 + (NSString *)stringWithSignedShort:(short)integer;
01539 
01545 + (NSString *)stringWithUnsignedShort:(unsigned short)integer;
01546 
01552 + (NSString *)stringWithSignedLong:(SCLong)longint;
01553 
01554 #pragma mark -
01555 #pragma mark Getting Text Representation of Hexadecimal Integer Values
01556 
01561 - (BOOL)isHexadecimalString;
01562 
01567 - (SCULong)hexadecimalInteger;
01568 
01578 - (NSString *)initWithHexadecimalInteger:(SCULong)integer
01579                                 capacity:(SCCapacity)capacity
01580                                uppercase:(BOOL)up separators:(BOOL)separators;
01581 
01590 - (NSString *)initWithHexadecimalInteger:(SCULong)integer
01591                                 capacity:(SCCapacity)capacity
01592                                uppercase:(BOOL)up;
01593 
01602 - (NSString *)initWithHexadecimalInteger:(SCULong)integer
01603                                 capacity:(SCCapacity)capacity
01604                               separators:(BOOL)separators;
01605 
01613 - (NSString *)initWithHexadecimalInteger:(SCULong)integer capacity:(SCCapacity)capacity;
01614 
01623 - (NSString *)initWithHexadecimalInteger:(SCULong)integer
01624                                                            uppercase:(BOOL)up
01625                                                           separators:(BOOL)separators;
01626 
01634 - (NSString *)initWithHexadecimalInteger:(SCULong)integer uppercase:(BOOL)up;
01635 
01643 - (NSString *)initWithHexadecimalInteger:(SCULong)integer separators:(BOOL)separators;
01644 
01651 - (NSString *)initWithHexadecimalInteger:(SCULong)integer;
01652 
01658 + (BOOL)characterIsHexadecimalInteger:(unichar)chr;
01659 
01669 + (NSString *)stringWithHexadecimalInteger:(SCULong)integer
01670                                   capacity:(SCCapacity)capacity
01671                                  uppercase:(BOOL)up
01672                                 separators:(BOOL)separators;
01673 
01682 + (NSString *)stringWithHexadecimalInteger:(SCULong)integer
01683                                   capacity:(SCCapacity)capacity
01684                                  uppercase:(BOOL)up;
01685 
01694 + (NSString *)stringWithHexadecimalInteger:(SCULong)integer
01695                                   capacity:(SCCapacity)capacity
01696                                 separators:(BOOL)separators;
01697 
01705 + (NSString *)stringWithHexadecimalInteger:(SCULong)integer capacity:(SCCapacity)capacity;
01706 
01715 + (NSString *)stringWithHexadecimalInteger:(SCULong)integer
01716                                                                  uppercase:(BOOL)up
01717                                                                 separators:(BOOL)separators;
01718 
01726 + (NSString *)stringWithHexadecimalInteger:(SCULong)integer uppercase:(BOOL)up;
01727 
01735 + (NSString *)stringWithHexadecimalInteger:(SCULong)integer separators:(BOOL)separators;
01736 
01742 + (NSString *)stringWithHexadecimalInteger:(SCULong)integer;
01743 
01744 #pragma mark -
01745 #pragma mark Getting Text Representation of Float Values
01746 
01752 - (id)initWithDouble:(SCDouble)dbl;
01753 
01759 + (NSString *)stringWithDouble:(SCDouble)dbl;
01760 
01761 #pragma mark -
01762 #pragma mark Getting Text Representation of Boolean Values
01763 
01769 - (id)initWithBoolean:(BOOL)value;
01770 
01776 + (NSString *)stringWithBoolean:(BOOL)value;
01777 
01782 - (BOOL)boolean;
01783 
01784 #pragma mark -
01785 #pragma mark Other Methods
01786 
01791 - (BOOL)isEmpty;
01792 
01797 - (NSString *)upperFirstLetter;
01798 
01803 - (NSString *)className;
01804 
01805 #pragma mark -
01806 #pragma mark Supporting Data Dictionaries
01807 
01812 - (void)writeToDataDictionary:(NSMutableDictionary *)dictionary;
01813 
01820 - (void)writeToDataDictionaryFile:(NSString *)path atomically:(BOOL)atomically;
01821 
01826 - (void)writeToDataDictionaryFile:(NSString *)path;
01827 
01832 - (NSDictionary *)dataDictionary;
01833 
01834 #pragma mark -
01835 #pragma mark Supporting Coders and Serialized Files
01836 
01842 - (BOOL)writeContentsToSerializedFile:(NSString *)path;
01843 
01844 #pragma mark -
01845 #pragma mark Supporting Streams
01846 
01853 - (void)writeToStream:(SCStream *)stream;
01854 
01860 - (void)writeToFileStream:(NSString *)path;
01861 
01867 - (void)appendToFileStream:(NSString *)path;
01868 
01869 #pragma mark -
01870 #pragma mark Supporting Collections
01871 
01876 - (id<SCCollectionProtocol>)copyObject;
01877 
01888 - (SCComparisonResult)compareWithObject:(id<SCCollectionProtocol>)object;
01889 
01890 @end
 All Classes Files Functions Typedefs Enumerations Enumerator Defines