}
@Override
public boolean visit(TypeLiteral node) {
if (node.getType().isPrimitiveType()) {
Code code = ((PrimitiveType) node.getType()).getPrimitiveTypeCode();
if (code.equals(PrimitiveType.BOOLEAN)) {
hardDep(node.getAST().resolveWellKnownType("java.lang.Boolean"));
print("::java::lang::Boolean::TYPE()");
} else if (code.equals(PrimitiveType.BYTE)) {
hardDep(node.getAST().resolveWellKnownType("java.lang.Byte"));
print("::java::lang::Byte::TYPE()");
} else if (code.equals(PrimitiveType.CHAR)) {
hardDep(node.getAST().resolveWellKnownType(
"java.lang.Character"));
print("::java::lang::Character::TYPE()");
} else if (code.equals(PrimitiveType.DOUBLE)) {
hardDep(node.getAST().resolveWellKnownType("java.lang.Double"));
print("::java::lang::Double::TYPE()");
} else if (code.equals(PrimitiveType.FLOAT)) {
hardDep(node.getAST().resolveWellKnownType("java.lang.Float"));
print("::java::lang::Float::TYPE()");
} else if (code.equals(PrimitiveType.INT)) {
hardDep(node.getAST().resolveWellKnownType("java.lang.Integer"));
print("::java::lang::Integer::TYPE()");
} else if (code.equals(PrimitiveType.LONG)) {
hardDep(node.getAST().resolveWellKnownType("java.lang.Long"));
print("::java::lang::Long::TYPE()");
} else if (code.equals(PrimitiveType.SHORT)) {
hardDep(node.getAST().resolveWellKnownType("java.lang.Short"));
print("::java::lang::Short::TYPE()");
} else if (code.equals(PrimitiveType.VOID)) {
hardDep(node.getAST().resolveWellKnownType("java.lang.Void"));
print("::java::lang::Void::TYPE()");
}
} else {
hardDep(node.getType().resolveBinding());