if (val instanceof Boolean)
return new BooleanLiteral((Boolean)val);
if (val instanceof Character)
return new ShortLiteral((short)((Character)val).charValue());
if (val instanceof Short)
return new ShortLiteral((Short)val);
if (val instanceof Integer)
return new IntegerLiteral((Integer)val);
if (val instanceof Long)