diff options
Diffstat (limited to 'typecheck/library/TypeInstance.java')
-rw-r--r-- | typecheck/library/TypeInstance.java | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/typecheck/library/TypeInstance.java b/typecheck/library/TypeInstance.java new file mode 100644 index 0000000..756d39b --- /dev/null +++ b/typecheck/library/TypeInstance.java @@ -0,0 +1,43 @@ +package typecheck.library; + +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; + } + +} |