package org.simantics.scl.compiler.elaboration.modules;\r
\r
+import org.simantics.scl.compiler.common.exceptions.InternalCompilerError;\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
+import org.simantics.scl.compiler.types.kinds.Kind;\r
\r
-public class TypeAlias {\r
- TCon con;\r
- \r
+public class TypeAlias extends TypeDescriptor { \r
public TVar[] parameters;\r
public Type body;\r
+ public String documentation;\r
\r
- public TypeAlias(TCon con, int arity) {\r
- this.con = con;\r
+ public TypeAlias(TCon name, int arity) {\r
+ super(name);\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
+ @Override\r
+ public Kind getKind() {\r
+ throw new InternalCompilerError("Unsupported method TypeAlias.getKind invoked.");\r
+ }\r
+ \r
+ @Override\r
+ public void setDocumentation(String documentation) {\r
+ this.documentation = documentation;\r
+ }\r
+ \r
+ @Override\r
+ public String getDocumentation() {\r
+ return documentation;\r
+ }\r
}\r