package minijava; public class TypeInstance { TypeEnum type; String type_name; public String toString() { return "name:" + type_name + "|type:" + type; } public TypeInstance(String type_name, TypeEnum type) { this.type = type; this.type_name = type_name; } public boolean equal_type(TypeInstance other) { /** * Given a TypeInstance object other, * returns true if other object * is the same type as this one. * * We can say two types are equal, as * long as they are not equal on a * type error! */ return this.type != TypeEnum.ERROR && this.type == other.type; } public boolean has_checked() { return type != TypeEnum.ERROR; } public TypeEnum get_type() { return this.type; } public String get_type_name() { return this.type_name; } }