public override Expression OnInterleave(InterleaveExp exp) { Expression e1 = exp.exp1.Visit(this); Expression e2 = exp.exp2.Visit(this); if (e1 == Expression.NotAllowed) { return(builder.CreateInterleave(exp.exp1, e2)); } if (e2 == Expression.NotAllowed) { return(builder.CreateInterleave(e1, exp.exp2)); } return(builder.CreateChoice( builder.CreateInterleave(exp.exp1, e2), builder.CreateInterleave(e1, exp.exp2))); }
public Expression OnInterleave( InterleaveExp exp ) { return builder.CreateChoice( builder.CreateInterleave( exp.exp1, exp.exp2.Visit(this) ), builder.CreateInterleave( exp.exp1.Visit(this), exp.exp2 )); }
public virtual Expression OnInterleave(InterleaveExp exp) { return(builder.CreateInterleave( exp.exp1.Visit(this), exp.exp2.Visit(this))); }
public Expression OnInterleave(InterleaveExp exp) { return(builder.CreateChoice( builder.CreateInterleave(exp.exp1, exp.exp2.Visit(this)), builder.CreateInterleave(exp.exp1.Visit(this), exp.exp2))); }
public void OnInterleave( InterleaveExp exp ) { OnBinExp(exp,"&"); }
public void OnInterleave(InterleaveExp exp) { exp.exp1.Visit(this); exp.exp2.Visit(this); }