1 package org.simantics.scl.compiler.elaboration.query;
3 import org.simantics.scl.compiler.elaboration.contexts.ReplaceContext;
4 import org.simantics.scl.compiler.elaboration.expressions.QueryTransformer;
5 import org.simantics.scl.compiler.elaboration.query.compilation.ConstraintCollectionContext;
8 public class QAlternative extends QAbstractCombiner {
10 public QAlternative(Query ... queries) {
15 public void collectConstraints(final ConstraintCollectionContext context) {
16 throw new UnsupportedOperationException();
20 public Query replace(ReplaceContext context) {
21 Query[] newQueries = new Query[queries.length];
22 for(int i=0;i<queries.length;++i)
23 newQueries[i] = queries[i].replace(context);
24 return new QAlternative(newQueries);
28 public void accept(QueryVisitor visitor) {
33 public Query accept(QueryTransformer transformer) {
34 return transformer.transform(this);