Beispiel #1
0
 // applyAfter :: (Pattern -> Pattern) -> Pattern -> Pattern
 internal static RdpPattern ApplyAfter(RdpApplyAfterHandler h, RdpPattern p)
 {
     if (p is RdpAfter)
     {
         return(After(p.LValue, h(p.RValue)));
     }
 }
Beispiel #2
0
		public override RdpPattern ApplyAfter (RdpApplyAfterHandler handler)
		{
//			return handler (LValue).Choice (handler (RValue));
			return LValue.ApplyAfter (handler).Choice (RValue.ApplyAfter (handler));
		}
Beispiel #3
0
		public override RdpPattern ApplyAfter (RdpApplyAfterHandler h)
		{
			return RdpNotAllowed.Instance;
		}
Beispiel #4
0
		// applyAfter((f, p1=this), p2)
		public virtual RdpPattern ApplyAfter (RdpApplyAfterHandler h)
		{
			throw new Exception ("INTERNAL ERROR: should not happen. This is " + this);
		}
Beispiel #5
0
		public override RdpPattern ApplyAfter (RdpApplyAfterHandler handler)
		{
			return LValue.After (handler (RValue));
		}
Beispiel #6
0
		// applyAfter :: (Pattern -> Pattern) -> Pattern -> Pattern
		internal static RdpPattern ApplyAfter (RdpApplyAfterHandler h, RdpPattern p)
		{
			if (p is RdpAfter)
				return After (p.LValue, h (p.RValue));
		}