if (type.equals(RULE_DELAYED_EXPRESSION)) return new RuleDelayedImpl(node);
if (type.equals(RULE_EXPRESSION)) return new RuleImpl(node);
// MString stuff
if (type.equals(STRING_EXPRESSION_EXPRESSION)) return new StringExpressionImpl(node);
if (type.equals(STRING_JOIN_EXPRESSION)) return new StringJoinImpl(node);
if (type.equals(MESSAGE_NAME_EXPRESSION)) return new MessageNameImpl(node);
if (type.equals(COMPOUND_EXPRESSION_EXPRESSION)) return new CompoundExpressionImpl(node);
// At least everything is an expression