Differences From Artifact [8e480899d7]:
- File
src/OFNumber.m
— part of check-in
[139591afe1]
at
2009-04-19 20:34:38
on branch trunk
— Use isa instead of [self class].
Since we don't use Object anymore and define isa in OFObject, we can
rely on it. (user: js, size: 10364) [annotate] [blame] [check-ins using]
To Artifact [1e5b23cc34]:
- File src/OFNumber.m — part of check-in [8eb830d7c8] at 2009-04-19 23:17:17 on branch trunk — Remove long double from OFNumber as there's no type encoding for it. (user: js, size: 9967) [annotate] [blame] [check-ins using]
︙ | ︙ | |||
60 61 62 63 64 65 66 | return (t)value.ptrdiff; \ case OF_NUMBER_INTPTR: \ return (t)value.intptr; \ case OF_NUMBER_FLOAT: \ return (t)value.float_; \ case OF_NUMBER_DOUBLE: \ return (t)value.double_; \ | < < | 60 61 62 63 64 65 66 67 68 69 70 71 72 73 | return (t)value.ptrdiff; \ case OF_NUMBER_INTPTR: \ return (t)value.intptr; \ case OF_NUMBER_FLOAT: \ return (t)value.float_; \ case OF_NUMBER_DOUBLE: \ return (t)value.double_; \ default: \ @throw [OFInvalidFormatException newWithClass: isa]; \ return 0; /* Make gcc happy */ \ } @implementation OFNumber + numberWithChar: (char)char_ |
︙ | ︙ | |||
188 189 190 191 192 193 194 | } + numberWithDouble: (double)double_ { return [[[OFNumber alloc] initWithDouble: double_] autorelease]; } | < < < < < | 186 187 188 189 190 191 192 193 194 195 196 197 198 199 | } + numberWithDouble: (double)double_ { return [[[OFNumber alloc] initWithDouble: double_] autorelease]; } - initWithChar: (char)char_ { if ((self = [super init])) { value.char_ = char_; type = OF_NUMBER_CHAR; } |
︙ | ︙ | |||
433 434 435 436 437 438 439 | value.double_ = double_; type = OF_NUMBER_DOUBLE; } return self; } | < < < < < < < < < < | 426 427 428 429 430 431 432 433 434 435 436 437 438 439 | value.double_ = double_; type = OF_NUMBER_DOUBLE; } return self; } - (enum of_number_type)type { return type; } - (char)asChar { |
︙ | ︙ | |||
605 606 607 608 609 610 611 | case OF_NUMBER_UINT64: case OF_NUMBER_SIZE: case OF_NUMBER_UINTMAX: case OF_NUMBER_INTPTR: return ([obj asUIntMax] == [self asUIntMax] ? YES : NO); case OF_NUMBER_FLOAT: case OF_NUMBER_DOUBLE: | < | | 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 | case OF_NUMBER_UINT64: case OF_NUMBER_SIZE: case OF_NUMBER_UINTMAX: case OF_NUMBER_INTPTR: return ([obj asUIntMax] == [self asUIntMax] ? YES : NO); case OF_NUMBER_FLOAT: case OF_NUMBER_DOUBLE: return ([obj asDouble] == [self asDouble] ? YES : NO); default: @throw [OFInvalidArgumentException newWithClass: isa andSelector: _cmd]; } } - (uint32_t)hash { return [self asUInt32]; } @end |