︙ | | | ︙ | |
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
#include <sys/stat.h>
#import "OFString.h"
#import "OFString_UTF8.h"
#import "OFString_UTF8+Private.h"
#import "OFArray.h"
#import "OFDictionary.h"
#import "OFFile.h"
#import "OFURL.h"
#ifdef OF_HAVE_SOCKETS
# import "OFHTTPClient.h"
# import "OFHTTPRequest.h"
# import "OFHTTPResponse.h"
#endif
#import "OFDataArray.h"
|
>
|
>
|
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
#include <sys/stat.h>
#import "OFString.h"
#import "OFString_UTF8.h"
#import "OFString_UTF8+Private.h"
#import "OFArray.h"
#import "OFDictionary.h"
#ifdef OF_HAVE_FILES
# import "OFFile.h"
#endif
#import "OFURL.h"
#ifdef OF_HAVE_SOCKETS
# import "OFHTTPClient.h"
# import "OFHTTPRequest.h"
# import "OFHTTPResponse.h"
#endif
#import "OFDataArray.h"
|
︙ | | | ︙ | |
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
|
- initWithFormat: (OFConstantString*)format
arguments: (va_list)arguments
{
return (id)[[OFString_UTF8 alloc] initWithFormat: format
arguments: arguments];
}
- initWithContentsOfFile: (OFString*)path
{
return (id)[[OFString_UTF8 alloc] initWithContentsOfFile: path];
}
- initWithContentsOfFile: (OFString*)path
encoding: (of_string_encoding_t)encoding
{
return (id)[[OFString_UTF8 alloc] initWithContentsOfFile: path
encoding: encoding];
}
- initWithContentsOfURL: (OFURL*)URL
{
return (id)[[OFString_UTF8 alloc] initWithContentsOfURL: URL];
}
- initWithContentsOfURL: (OFURL*)URL
|
>
>
|
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
|
- initWithFormat: (OFConstantString*)format
arguments: (va_list)arguments
{
return (id)[[OFString_UTF8 alloc] initWithFormat: format
arguments: arguments];
}
#ifdef OF_HAVE_FILES
- initWithContentsOfFile: (OFString*)path
{
return (id)[[OFString_UTF8 alloc] initWithContentsOfFile: path];
}
- initWithContentsOfFile: (OFString*)path
encoding: (of_string_encoding_t)encoding
{
return (id)[[OFString_UTF8 alloc] initWithContentsOfFile: path
encoding: encoding];
}
#endif
- initWithContentsOfURL: (OFURL*)URL
{
return (id)[[OFString_UTF8 alloc] initWithContentsOfURL: URL];
}
- initWithContentsOfURL: (OFURL*)URL
|
︙ | | | ︙ | |
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
|
ret = [[[self alloc] initWithFormat: format
arguments: arguments] autorelease];
va_end(arguments);
return ret;
}
+ (instancetype)stringWithContentsOfFile: (OFString*)path
{
return [[[self alloc] initWithContentsOfFile: path] autorelease];
}
+ (instancetype)stringWithContentsOfFile: (OFString*)path
encoding: (of_string_encoding_t)encoding
{
return [[[self alloc] initWithContentsOfFile: path
encoding: encoding] autorelease];
}
+ (instancetype)stringWithContentsOfURL: (OFURL*)URL
{
return [[[self alloc] initWithContentsOfURL: URL] autorelease];
}
+ (instancetype)stringWithContentsOfURL: (OFURL*)URL
|
>
>
|
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
|
ret = [[[self alloc] initWithFormat: format
arguments: arguments] autorelease];
va_end(arguments);
return ret;
}
#ifdef OF_HAVE_FILES
+ (instancetype)stringWithContentsOfFile: (OFString*)path
{
return [[[self alloc] initWithContentsOfFile: path] autorelease];
}
+ (instancetype)stringWithContentsOfFile: (OFString*)path
encoding: (of_string_encoding_t)encoding
{
return [[[self alloc] initWithContentsOfFile: path
encoding: encoding] autorelease];
}
#endif
+ (instancetype)stringWithContentsOfURL: (OFURL*)URL
{
return [[[self alloc] initWithContentsOfURL: URL] autorelease];
}
+ (instancetype)stringWithContentsOfURL: (OFURL*)URL
|
︙ | | | ︙ | |
782
783
784
785
786
787
788
789
790
791
792
793
794
795
|
- initWithFormat: (OFConstantString*)format
arguments: (va_list)arguments
{
OF_INVALID_INIT_METHOD
}
- initWithContentsOfFile: (OFString*)path
{
return [self initWithContentsOfFile: path
encoding: OF_STRING_ENCODING_UTF_8];
}
- initWithContentsOfFile: (OFString*)path
|
>
|
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
|
- initWithFormat: (OFConstantString*)format
arguments: (va_list)arguments
{
OF_INVALID_INIT_METHOD
}
#ifdef OF_HAVE_FILES
- initWithContentsOfFile: (OFString*)path
{
return [self initWithContentsOfFile: path
encoding: OF_STRING_ENCODING_UTF_8];
}
- initWithContentsOfFile: (OFString*)path
|
︙ | | | ︙ | |
829
830
831
832
833
834
835
836
837
838
839
840
841
842
|
self = [self initWithCString: tmp
encoding: encoding
length: (size_t)st.st_size];
[self freeMemory: tmp];
return self;
}
- initWithContentsOfURL: (OFURL*)URL
{
return [self initWithContentsOfURL: URL
encoding: OF_STRING_ENCODING_AUTODETECT];
}
|
>
|
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
|
self = [self initWithCString: tmp
encoding: encoding
length: (size_t)st.st_size];
[self freeMemory: tmp];
return self;
}
#endif
- initWithContentsOfURL: (OFURL*)URL
{
return [self initWithContentsOfURL: URL
encoding: OF_STRING_ENCODING_AUTODETECT];
}
|
︙ | | | ︙ | |
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
|
c = [self class];
[self release];
pool = objc_autoreleasePoolPush();
if ([[URL scheme] isEqual: @"file"]) {
if (encoding == OF_STRING_ENCODING_AUTODETECT)
encoding = OF_STRING_ENCODING_UTF_8;
self = [[c alloc] initWithContentsOfFile: [URL path]
encoding: encoding];
objc_autoreleasePoolPop(pool);
return self;
}
#ifdef OF_HAVE_SOCKETS
client = [OFHTTPClient client];
request = [OFHTTPRequest requestWithURL: URL];
response = [client performRequest: request];
|
>
>
>
>
|
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
|
c = [self class];
[self release];
pool = objc_autoreleasePoolPush();
if ([[URL scheme] isEqual: @"file"]) {
#ifdef OF_HAVE_FILES
if (encoding == OF_STRING_ENCODING_AUTODETECT)
encoding = OF_STRING_ENCODING_UTF_8;
self = [[c alloc] initWithContentsOfFile: [URL path]
encoding: encoding];
objc_autoreleasePoolPop(pool);
return self;
#else
@throw [OFUnsupportedProtocolException exceptionWithURL: URL];
#endif
}
#ifdef OF_HAVE_SOCKETS
client = [OFHTTPClient client];
request = [OFHTTPRequest requestWithURL: URL];
response = [client performRequest: request];
|
︙ | | | ︙ | |
2421
2422
2423
2424
2425
2426
2427
2428
2429
2430
2431
2432
2433
2434
2435
2436
2437
2438
2439
2440
2441
2442
2443
2444
2445
2446
2447
2448
2449
2450
2451
2452
2453
|
for (i = 0; i < length; i++)
ret[i] = OF_BSWAP32(ret[i]);
}
return ret;
}
- (void)writeToFile: (OFString*)path
{
return [self writeToFile: path
encoding: OF_STRING_ENCODING_UTF_8];
}
- (void)writeToFile: (OFString*)path
encoding: (of_string_encoding_t)encoding
{
void *pool = objc_autoreleasePoolPush();
OFFile *file;
file = [OFFile fileWithPath: path
mode: @"wb"];
[file writeString: self
encoding: encoding];
objc_autoreleasePoolPop(pool);
}
#ifdef OF_HAVE_BLOCKS
- (void)enumerateLinesUsingBlock: (of_string_line_enumeration_block_t)block
{
void *pool = objc_autoreleasePoolPush();
const of_unichar_t *characters = [self characters];
size_t i, last = 0, length = [self length];
|
>
>
|
2433
2434
2435
2436
2437
2438
2439
2440
2441
2442
2443
2444
2445
2446
2447
2448
2449
2450
2451
2452
2453
2454
2455
2456
2457
2458
2459
2460
2461
2462
2463
2464
2465
2466
2467
|
for (i = 0; i < length; i++)
ret[i] = OF_BSWAP32(ret[i]);
}
return ret;
}
#ifdef OF_HAVE_FILES
- (void)writeToFile: (OFString*)path
{
return [self writeToFile: path
encoding: OF_STRING_ENCODING_UTF_8];
}
- (void)writeToFile: (OFString*)path
encoding: (of_string_encoding_t)encoding
{
void *pool = objc_autoreleasePoolPush();
OFFile *file;
file = [OFFile fileWithPath: path
mode: @"wb"];
[file writeString: self
encoding: encoding];
objc_autoreleasePoolPop(pool);
}
#endif
#ifdef OF_HAVE_BLOCKS
- (void)enumerateLinesUsingBlock: (of_string_line_enumeration_block_t)block
{
void *pool = objc_autoreleasePoolPush();
const of_unichar_t *characters = [self characters];
size_t i, last = 0, length = [self length];
|
︙ | | | ︙ | |