/** * Creates a new complete constructor {@code ACaseAlternative} node with the given nodes as children. * @deprecated This method should not be used, use AstFactory instead. * The basic child nodes are removed from their previous parents. * @param location_ the {@link ILexLocation} node for the {@code location} child of this {@link ACaseAlternative} node * @param cexp_ the {@link PExp} node for the {@code cexp} child of this {@link ACaseAlternative} node * @param pattern_ the {@link PPattern} node for the {@code pattern} child of this {@link ACaseAlternative} node * @param result_ the {@link PExp} node for the {@code result} child of this {@link ACaseAlternative} node * @param defs_ the {@link NodeList} node for the {@code defs} child of this {@link ACaseAlternative} node * @param type_ the {@link PType} <b>graph</a> node for the {@code type} child of this {@link ACaseAlternative} node. * <i>The parent of this {@code type } will not be changed by adding it to this node.</i> * @param expType_ the {@link PType} <b>graph</a> node for the {@code expType} child of this {@link ACaseAlternative} node. * <i>The parent of this {@code expType } will not be changed by adding it to this node.</i> */ public ACaseAlternative(ILexLocation location_, PExp cexp_, PPattern pattern_, PExp result_, List<? extends PDefinition> defs_, PType type_, PType expType_) { super(); this.setLocation(location_); this.setCexp(cexp_); this.setPattern(pattern_); this.setResult(result_); this.setDefs(defs_); this.setType(type_); this.setExpType(expType_); }
c.setType(c.getResult().apply(rootVisitor, question)); local.unusedCheck(); return c.getType();