690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
|
}
- mutableCopy
{
return [[OFMutableString alloc] initWithString: self];
}
- (of_comparison_result_t)compare: (OFString*)str
{
size_t str_len, min_len;
int cmp;
if (![str isKindOfClass: [OFString class]])
@throw [OFInvalidArgumentException newWithClass: isa
selector: _cmd];
str_len = [str cStringLength];
min_len = (length > str_len ? str_len : length);
if ((cmp = memcmp(string, [str cString], min_len)) == 0) {
if (length > str_len)
return OF_ORDERED_DESCENDING;
if (length < str_len)
return OF_ORDERED_ASCENDING;
return OF_ORDERED_SAME;
}
|
|
|
|
|
|
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
|
}
- mutableCopy
{
return [[OFMutableString alloc] initWithString: self];
}
- (of_comparison_result_t)compare: (id)obj
{
size_t str_len, min_len;
int cmp;
if (![obj isKindOfClass: [OFString class]])
@throw [OFInvalidArgumentException newWithClass: isa
selector: _cmd];
str_len = [(OFString*)obj cStringLength];
min_len = (length > str_len ? str_len : length);
if ((cmp = memcmp(string, [(OFString*)obj cString], min_len)) == 0) {
if (length > str_len)
return OF_ORDERED_DESCENDING;
if (length < str_len)
return OF_ORDERED_ASCENDING;
return OF_ORDERED_SAME;
}
|