62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
|
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 */ \
}
#define CALCULATE(o) \
switch (type) { \
case OF_NUMBER_CHAR: \
value.char_ o; \
break; \
case OF_NUMBER_SHORT: \
|
<
|
62
63
64
65
66
67
68
69
70
71
72
73
74
75
|
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]; \
}
#define CALCULATE(o) \
switch (type) { \
case OF_NUMBER_CHAR: \
value.char_ o; \
break; \
case OF_NUMBER_SHORT: \
|
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
|
value.float_ o; \
break; \
case OF_NUMBER_DOUBLE: \
value.double_ o; \
break; \
default: \
@throw [OFInvalidFormatException newWithClass: isa]; \
break; \
}
#define CALCULATE2(o, n) \
switch ([n type]) { \
case OF_NUMBER_CHAR: \
value.char_ o [n asChar]; \
break; \
case OF_NUMBER_SHORT: \
|
<
|
139
140
141
142
143
144
145
146
147
148
149
150
151
152
|
value.float_ o; \
break; \
case OF_NUMBER_DOUBLE: \
value.double_ o; \
break; \
default: \
@throw [OFInvalidFormatException newWithClass: isa]; \
}
#define CALCULATE2(o, n) \
switch ([n type]) { \
case OF_NUMBER_CHAR: \
value.char_ o [n asChar]; \
break; \
case OF_NUMBER_SHORT: \
|
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
|
value.float_ o [n asFloat]; \
break; \
case OF_NUMBER_DOUBLE: \
value.double_ o [n asDouble]; \
break; \
default: \
@throw [OFInvalidFormatException newWithClass: isa]; \
break; \
}
@implementation OFNumber
+ numberWithChar: (char)char_
{
return [[[OFNumber alloc] initWithChar: char_] autorelease];
}
|
<
|
216
217
218
219
220
221
222
223
224
225
226
227
228
229
|
value.float_ o [n asFloat]; \
break; \
case OF_NUMBER_DOUBLE: \
value.double_ o [n asDouble]; \
break; \
default: \
@throw [OFInvalidFormatException newWithClass: isa]; \
}
@implementation OFNumber
+ numberWithChar: (char)char_
{
return [[[OFNumber alloc] initWithChar: char_] autorelease];
}
|