@@ -195,33 +195,40 @@ object scalaPrimitives {
195
195
}
196
196
197
197
/** Initialize the primitive map */
198
- def init () {
198
+ def init (implicit ctx : core.Contexts .Context ) {
199
+
200
+ import core .Symbols .defn
201
+
199
202
primitives.clear()
200
203
// scala.Any
201
- addPrimitive(Any_== , EQ )
202
- addPrimitive(Any_!= , NE )
203
- addPrimitive(Any_isInstanceOf , IS )
204
- addPrimitive(Any_asInstanceOf , AS )
205
- addPrimitive(Any_## , HASH )
204
+ addPrimitive(defn. Any_== , EQ )
205
+ addPrimitive(defn. Any_!= , NE )
206
+ addPrimitive(defn. Any_isInstanceOf , IS )
207
+ addPrimitive(defn. Any_asInstanceOf , AS )
208
+ addPrimitive(defn. Any_## , HASH )
206
209
207
210
// java.lang.Object
208
- addPrimitive(Object_eq , ID )
209
- addPrimitive(Object_ne , NI )
210
- addPrimitive(Object_== , EQ )
211
- addPrimitive(Object_!= , NE )
212
- addPrimitive(Object_synchronized , SYNCHRONIZED )
213
- addPrimitive(Object_isInstanceOf , IS )
214
- addPrimitive(Object_asInstanceOf , AS )
211
+ addPrimitive(defn. Object_eq , ID )
212
+ addPrimitive(defn. Object_ne , NI )
213
+ addPrimitive(defn. Object_== , EQ )
214
+ addPrimitive(defn. Object_!= , NE )
215
+ addPrimitive(defn. Object_synchronized , SYNCHRONIZED )
216
+ addPrimitive(defn. Object_isInstanceOf , IS )
217
+ addPrimitive(defn. Object_asInstanceOf , AS )
215
218
216
219
// java.lang.String
217
- addPrimitive(String_+ , CONCAT )
220
+ addPrimitive(defn.String_+ , CONCAT )
221
+
222
+ import core .StdNames .nme
218
223
219
224
// scala.Array
225
+ val ArrayClass = defn.ArrayClass
220
226
addPrimitives(ArrayClass , nme.length, LENGTH )
221
227
addPrimitives(ArrayClass , nme.apply, APPLY )
222
228
addPrimitives(ArrayClass , nme.update, UPDATE )
223
229
224
230
// scala.Boolean
231
+ val BooleanClass = defn.BooleanClass
225
232
addPrimitives(BooleanClass , nme.EQ , EQ )
226
233
addPrimitives(BooleanClass , nme.NE , NE )
227
234
addPrimitives(BooleanClass , nme.UNARY_! , ZNOT )
@@ -232,6 +239,7 @@ object scalaPrimitives {
232
239
addPrimitives(BooleanClass , nme.XOR , XOR )
233
240
234
241
// scala.Byte
242
+ val ByteClass = defn.ByteClass
235
243
addPrimitives(ByteClass , nme.EQ , EQ )
236
244
addPrimitives(ByteClass , nme.NE , NE )
237
245
addPrimitives(ByteClass , nme.ADD , ADD )
@@ -264,6 +272,7 @@ object scalaPrimitives {
264
272
addPrimitives(ByteClass , nme.toDouble, B2D )
265
273
266
274
// scala.Short
275
+ val ShortClass = defn.ShortClass
267
276
addPrimitives(ShortClass , nme.EQ , EQ )
268
277
addPrimitives(ShortClass , nme.NE , NE )
269
278
addPrimitives(ShortClass , nme.ADD , ADD )
@@ -296,6 +305,7 @@ object scalaPrimitives {
296
305
addPrimitives(ShortClass , nme.toDouble, S2D )
297
306
298
307
// scala.Char
308
+ val CharClass = defn.CharClass
299
309
addPrimitives(CharClass , nme.EQ , EQ )
300
310
addPrimitives(CharClass , nme.NE , NE )
301
311
addPrimitives(CharClass , nme.ADD , ADD )
@@ -327,6 +337,7 @@ object scalaPrimitives {
327
337
addPrimitives(CharClass , nme.toDouble, C2D )
328
338
329
339
// scala.Int
340
+ val IntClass = defn.IntClass
330
341
addPrimitives(IntClass , nme.EQ , EQ )
331
342
addPrimitives(IntClass , nme.NE , NE )
332
343
addPrimitives(IntClass , nme.ADD , ADD )
@@ -358,6 +369,7 @@ object scalaPrimitives {
358
369
addPrimitives(IntClass , nme.toDouble, I2D )
359
370
360
371
// scala.Long
372
+ val LongClass = defn.LongClass
361
373
addPrimitives(LongClass , nme.EQ , EQ )
362
374
addPrimitives(LongClass , nme.NE , NE )
363
375
addPrimitives(LongClass , nme.ADD , ADD )
@@ -389,6 +401,7 @@ object scalaPrimitives {
389
401
addPrimitives(LongClass , nme.toDouble, L2D )
390
402
391
403
// scala.Float
404
+ val FloatClass = defn.FloatClass
392
405
addPrimitives(FloatClass , nme.EQ , EQ )
393
406
addPrimitives(FloatClass , nme.NE , NE )
394
407
addPrimitives(FloatClass , nme.ADD , ADD )
@@ -413,6 +426,7 @@ object scalaPrimitives {
413
426
addPrimitives(FloatClass , nme.UNARY_- , NEG )
414
427
415
428
// scala.Double
429
+ val DoubleClass = defn.DoubleClass
416
430
addPrimitives(DoubleClass , nme.EQ , EQ )
417
431
addPrimitives(DoubleClass , nme.NE , NE )
418
432
addPrimitives(DoubleClass , nme.ADD , ADD )
@@ -526,14 +540,14 @@ object scalaPrimitives {
526
540
}
527
541
528
542
/** If code is a coercion primitive, the result type */
529
- def generatedKind (code : Int ): BType = code match {
530
- case B2B | C2B | S2B | I2B | L2B | F2B | D2B => BType .BYTE
531
- case B2C | C2C | S2C | I2C | L2C | F2C | D2C => BType .CHAR
532
- case B2S | C2S | S2S | I2S | L2S | F2S | D2S => BType .SHORT
533
- case B2I | C2I | S2I | I2I | L2I | F2I | D2I => BType .INT
534
- case B2L | C2L | S2L | I2L | L2L | F2L | D2L => BType .LONG
535
- case B2F | C2F | S2F | I2F | L2F | F2F | D2F => BType .FLOAT
536
- case B2D | C2D | S2D | I2D | L2D | F2D | D2D => BType .DOUBLE
543
+ def generatedKind (code : Int ): GenBCode . BType = code match {
544
+ case B2B | C2B | S2B | I2B | L2B | F2B | D2B => GenBCode . BType .BYTE
545
+ case B2C | C2C | S2C | I2C | L2C | F2C | D2C => GenBCode . BType .CHAR
546
+ case B2S | C2S | S2S | I2S | L2S | F2S | D2S => GenBCode . BType .SHORT
547
+ case B2I | C2I | S2I | I2I | L2I | F2I | D2I => GenBCode . BType .INT
548
+ case B2L | C2L | S2L | I2L | L2L | F2L | D2L => GenBCode . BType .LONG
549
+ case B2F | C2F | S2F | I2F | L2F | F2F | D2F => GenBCode . BType .FLOAT
550
+ case B2D | C2D | S2D | I2D | L2D | F2D | D2D => GenBCode . BType .DOUBLE
537
551
}
538
552
539
553
def isPrimitive (sym : Symbol ): Boolean = primitives contains sym
0 commit comments