// TODO: Question, should we allow non terminal types in splices?
if (type instanceof NonTerminalType) {
throw new UnsupportedOperation("splicing match", type, this);
// throw new ImplementationError(null);
}
return new TypedMultiVariablePattern(eval, this, type, arg.getName());
}
if(arg.hasQualifiedName()){
return new MultiVariablePattern(eval, this, arg.getQualifiedName());
}
throw new ImplementationError(null);