7 <primitive: 'LargeInteger_add'>
12 <primitive: 'LargeInteger_sub'>
17 <primitive: 'LargeInteger_mul'>
22 <primitive: 'LargeInteger_div'>
24 ifTrue: [ self error: 'cannot divide by 0' ].
25 (aNumber isMemberOf: LargeInteger)
26 ifTrue: [ ^ Fraction numerator: self denominator: aNumber ]
27 ifFalse: [ ^ super / aNumber ]!
31 <primitive: 'LargeInteger_intDiv'>
36 <primitive: 'LargeInteger_mod'>
44 <primitive: 'LargeInteger_gcd'>
45 (anInteger isMemberOf: SmallInteger)
46 ifTrue: [^ self gcd: (self coerce: anInteger)]
47 ifFalse: [ self error: 'primitive failed']!
51 <primitive: 'LargeInteger_lcm'>
52 ^ super lcm: anInteger!
59 <primitive: 'LargeInteger_lt'>
64 <primitive: 'LargeInteger_gt'>
69 <primitive: 'LargeInteger_le'>
74 <primitive: 'LargeInteger_ge'>
79 <primitive: 'LargeInteger_eq'>
84 <primitive: 'LargeInteger_ne'>
89 <primitive: 'LargeInteger_hash'>
97 <primitive: 'LargeInteger_bitOr'>
98 ^ super bitOr: aNumber!
102 <primitive: 'LargeInteger_bitAnd'>
103 ^ super bitAnd: aNumber!
107 <primitive: 'LargeInteger_bitAnd'>
108 ^ super bitXor: aNumber!
112 <primitive: 'LargeInteger_bitShift'>
113 ^ super bitShift: aNumber!
120 <primitive: 'LargeInteger_asFloat'>
121 self primitiveFailed!
145 ^ aNumber asLargeInteger!
150 printStringBase: anInteger
151 <primitive: 'LargeInteger_printStringBase'>
152 anInteger isSmallInteger
153 ifTrue: [ self error: 'expected a large integer' ]!
156 printOn: aStream base: anInteger
157 aStream nextPutAll: (self printStringBase: anInteger)!