]> gerrit.simantics Code Review - simantics/platform.git/blobdiff - bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/elaboration/modules/TypeAlias.java
(refs #7250) Merging master, minor CHR bugfixes
[simantics/platform.git] / bundles / org.simantics.scl.compiler / src / org / simantics / scl / compiler / elaboration / modules / TypeAlias.java
index ce888324ce2bda26efc182a97e9ea388d2a328b5..13ac5ea2439d6d8e95263facf3388d5481a7d59e 100644 (file)
@@ -1,25 +1,37 @@
-package org.simantics.scl.compiler.elaboration.modules;\r
-\r
-import org.simantics.scl.compiler.types.TCon;\r
-import org.simantics.scl.compiler.types.TVar;\r
-import org.simantics.scl.compiler.types.Type;\r
-\r
-public class TypeAlias {\r
-    TCon con;\r
-    \r
-    public TVar[] parameters;\r
-    public Type body;\r
-    \r
-    public TypeAlias(TCon con, int arity) {\r
-        this.con = con;\r
-        this.parameters = new TVar[arity];\r
-    }\r
-    \r
-    public TCon getCon() {\r
-        return con;\r
-    }\r
-\r
-    public int getArity() {\r
-        return parameters.length;\r
-    }\r
-}\r
+package org.simantics.scl.compiler.elaboration.modules;
+
+import org.simantics.scl.compiler.common.exceptions.InternalCompilerError;
+import org.simantics.scl.compiler.types.TCon;
+import org.simantics.scl.compiler.types.TVar;
+import org.simantics.scl.compiler.types.Type;
+import org.simantics.scl.compiler.types.kinds.Kind;
+
+public class TypeAlias extends TypeDescriptor {   
+    public TVar[] parameters;
+    public Type body;
+    public String documentation;
+    
+    public TypeAlias(TCon name, int arity) {
+        super(name);
+        this.parameters = new TVar[arity];
+    }
+    
+    public int getArity() {
+        return parameters.length;
+    }
+
+    @Override
+    public Kind getKind() {
+        throw new InternalCompilerError("Unsupported method TypeAlias.getKind invoked.");
+    }
+    
+    @Override
+    public void setDocumentation(String documentation) {
+        this.documentation = documentation;
+    }
+    
+    @Override
+    public String getDocumentation() {
+        return documentation;
+    }
+}