Esempio n. 1
0
 /** @see jaskell.compiler.JaskellVisitor#visit(Constructor) */
 public Object visit(Constructor a) {
   Type ret = a.getType();
   if (ret != null) return ret;
   String vname = a.getName();
   ConstructorDefinition def = (ConstructorDefinition) a.lookup(vname);
   if (def == null) // unknown symbol
   throw new CompilerException("Unknown constructor " + vname);
   ret = new TypeInstantiator(def.getType()).instance();
   a.setType(ret);
   return ret;
 }