Ejemplo n.º 1
0
		internal override RdpPattern StartAttDeriv (string name, string ns, MemoizationStore memo)
		{
			return memo.StartAttDeriv (LValue, name, ns)
				.Choice (memo.StartAttDeriv (RValue, name, ns));
		}
Ejemplo n.º 2
0
		internal override RdpPattern StartAttDeriv (string name, string ns, MemoizationStore memo)
		{
			RdpPattern rest = RdpEmpty.Instance.Choice (Child.OneOrMore ());
			RdpPattern handled = memo.StartAttDeriv (Child, name, ns);
			RdpFlip f = MakeFlip (RdpUtil.GroupFunction, rest);
			return handled.ApplyAfter (new RdpApplyAfterHandler (f.Apply));
		}
Ejemplo n.º 3
0
		internal override RdpPattern StartAttDeriv (string name, string ns, MemoizationStore memo)
		{
			RdpPattern handled = memo.StartAttDeriv (LValue, name, ns);
			RdpFlip f = MakeFlip (RdpUtil.AfterFunction, RValue);
			return handled.ApplyAfter (new RdpApplyAfterHandler (
				f.Apply));
		}
Ejemplo n.º 4
0
		internal override RdpPattern StartAttDeriv (string name, string ns, MemoizationStore memo)
		{
			RdpPattern handledL = memo.StartAttDeriv (LValue, name, ns);
			RdpPattern handledR = memo.StartAttDeriv (RValue, name, ns);
			RdpFlip flipL = MakeFlip (RdpUtil.GroupFunction, RValue);
			RdpPattern choiceL = handledL.ApplyAfter (new RdpApplyAfterHandler (flipL.Apply));
			RdpPattern choiceR = handledR.ApplyAfter (new RdpApplyAfterHandler (LValue.Group));
			return choiceL.Choice (choiceR);
		}