X-Git-Url: https://gerrit.simantics.org/r/gitweb?a=blobdiff_plain;f=bundles%2Forg.simantics.scl.compiler%2Fsrc%2Forg%2Fsimantics%2Fscl%2Fcompiler%2Felaboration%2Fmodules%2FTypeAlias.java;h=13ac5ea2439d6d8e95263facf3388d5481a7d59e;hb=fad36d463b75c3a9944d875fc627c3533f6da74d;hp=ce888324ce2bda26efc182a97e9ea388d2a328b5;hpb=969bd23cab98a79ca9101af33334000879fb60c5;p=simantics%2Fplatform.git diff --git a/bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/elaboration/modules/TypeAlias.java b/bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/elaboration/modules/TypeAlias.java index ce888324c..13ac5ea24 100644 --- a/bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/elaboration/modules/TypeAlias.java +++ b/bundles/org.simantics.scl.compiler/src/org/simantics/scl/compiler/elaboration/modules/TypeAlias.java @@ -1,25 +1,37 @@ -package org.simantics.scl.compiler.elaboration.modules; - -import org.simantics.scl.compiler.types.TCon; -import org.simantics.scl.compiler.types.TVar; -import org.simantics.scl.compiler.types.Type; - -public class TypeAlias { - TCon con; - - public TVar[] parameters; - public Type body; - - public TypeAlias(TCon con, int arity) { - this.con = con; - this.parameters = new TVar[arity]; - } - - public TCon getCon() { - return con; - } - - public int getArity() { - return parameters.length; - } -} +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; + } +}