1 package org.simantics.scl.compiler.internal.parsing.declarations;
3 import org.simantics.scl.compiler.internal.parsing.Symbol;
4 import org.simantics.scl.compiler.internal.parsing.Token;
5 import org.simantics.scl.compiler.internal.parsing.types.TypeAst;
8 public class ConstructorAst extends Symbol {
9 public static final ConstructorAst[] EMPTY_ARRAY = new ConstructorAst[0];
11 public final DAnnotationAst[] annotations;
12 public final Token name;
13 public final TypeAst[] parameters;
14 public final String[] fieldNames; // null, if no field names
16 public ConstructorAst(DAnnotationAst[] annotations, Token name,
17 TypeAst[] parameters, String[] fieldNames) {
18 this.annotations = annotations;
20 this.parameters = parameters;
21 this.fieldNames = fieldNames;
24 public void toString(StringBuilder b) {
26 for(TypeAst parameter : parameters) {
28 parameter.toString(b, 1);