Scope intMembers = IntegerClass.members();
// Byte
putCommonMethods(symtab.byteType, ByteClass, true);
putToStringShortByte(symtab.byteType, ByteClass, IntegerClass);
functionTemplates.put(findMethod("hashCode", ByteClass), new FunctionTemplate(byteHashCode, false, symtab.byteType));
unboxedValueFunctions.put(symtab.byteType, findMethod("byteValue", ByteClass));
// Short
putCommonMethods(symtab.shortType, ShortClass, true);
putToStringShortByte(symtab.shortType, ShortClass, IntegerClass);
functionTemplates.put(findMethod("hashCode", ShortClass), new FunctionTemplate(shortHashCode, false, symtab.shortType));
unboxedValueFunctions.put(symtab.shortType, findMethod("shortValue", ShortClass));
// Integer
putCommonMethods(symtab.intType, IntegerClass, true);
putToString(symtab.intType, IntegerClass);
functionTemplates.put(findMethod("hashCode", IntegerClass), new FunctionTemplate(intHashCode, false, symtab.intType));
unboxedValueFunctions.put(symtab.intType, findMethod("intValue", IntegerClass));
// Long
putCommonMethods(symtab.longType, LongClass, true);
putToString(symtab.longType, LongClass);
functionTemplates.put(findMethod("hashCode", LongClass), new FunctionTemplate(longHashCode, false, symtab.longType));
unboxedValueFunctions.put(symtab.longType, findMethod("longValue", LongClass));
// Float
putCommonMethods(symtab.floatType, FloatClass, false);
putToString(symtab.floatType, FloatClass);
unboxedValueFunctions.put(symtab.floatType, findMethod("floatValue", FloatClass));
// Double
putCommonMethods(symtab.doubleType, DoubleClass, false);
putToString(symtab.doubleType, DoubleClass);
unboxedValueFunctions.put(symtab.doubleType, findMethod("doubleValue", DoubleClass));
// Boolean
functionTemplates.put(findMethod("hashCode", BooleanClass), new FunctionTemplate(boolHashCode,false, symtab.booleanType));
functionTemplates.put(findMethod("toString", BooleanClass), new FunctionTemplate(boolToString, false, symtab.booleanType));
functionTemplates.put(findMethod("booleanValue", BooleanClass), new FunctionTemplate(booleanValue, false, symtab.booleanType));
}