package com.sun.msv.grammar;
/**
* <interleave> pattern of TREX, or <all> particle of XML Schema.
*
* @author <a href="mailto:kohsuke.kawaguchi@eng.sun.com">Kohsuke KAWAGUCHI</a>
*/
public final class InterleaveExp extends BinaryExp {
InterleaveExp( Expression left, Expression right ) {
super(left,right,HASHCODE_INTERLEAVE);
}
public Object visit( ExpressionVisitor visitor ) {
return visitor.onInterleave(this);
}
public Expression visit( ExpressionVisitorExpression visitor ) {
return visitor.onInterleave(this);
}
public boolean visit( ExpressionVisitorBoolean visitor ) {
return visitor.onInterleave(this);
}
public void visit( ExpressionVisitorVoid visitor ) {
visitor.onInterleave(this);
}
protected boolean calcEpsilonReducibility() {
return exp1.isEpsilonReducible() && exp2.isEpsilonReducible();
}
}