equal
deleted
inserted
replaced
311 |
311 |
312 "LargeInteger value:3689" |
312 "LargeInteger value:3689" |
313 |
313 |
314 "Modified: / 8.5.1998 / 21:40:41 / cg" |
314 "Modified: / 8.5.1998 / 21:40:41 / cg" |
315 ! ! |
315 ! ! |
|
316 |
|
317 |
316 |
318 |
317 !LargeInteger class methodsFor:'queries'! |
319 !LargeInteger class methodsFor:'queries'! |
318 |
320 |
319 isBuiltInClass |
321 isBuiltInClass |
320 "return true if this class is known by the run-time-system. |
322 "return true if this class is known by the run-time-system. |
2395 anInteger == 0 ifTrue:[^ 0]. |
2397 anInteger == 0 ifTrue:[^ 0]. |
2396 anInteger == 1 ifTrue:[^ self]. |
2398 anInteger == 1 ifTrue:[^ self]. |
2397 |
2399 |
2398 num := anInteger abs. |
2400 num := anInteger abs. |
2399 SmallInteger maxBytes == 8 ifTrue:[ |
2401 SmallInteger maxBytes == 8 ifTrue:[ |
2400 (num > 16rFFFFFFFF) ifTrue:[ |
2402 (num > 16rFFFFFFFFFF) ifTrue:[ |
2401 "if num is too big (so that multiplying by a byte could create a Large)" |
2403 "if num is too big (so that multiplying by a byte could create a Large)" |
2402 ^ anInteger retry:#* coercing:self |
2404 ^ anInteger retry:#* coercing:self |
2403 ]. |
2405 ]. |
2404 ] ifFalse:[ |
2406 ] ifFalse:[ |
2405 (num > 16r3FFFFF) ifTrue:[ |
2407 (num > 16r3FFFFF) ifTrue:[ |