Ejemplo n.º 1
0
		internal override RdpPattern MixedTextDeriv (MemoizationStore memo)
		{
			RdpPattern p = memo.MixedTextDeriv (LValue).Group (RValue);
			return LValue.Nullable ?
				p.Choice (memo.MixedTextDeriv (RValue)) : p;
		}
Ejemplo n.º 2
0
		internal override RdpPattern MixedTextDeriv (MemoizationStore memo)
		{
			return memo.MixedTextDeriv (LValue).Choice (
				memo.MixedTextDeriv (RValue));
		}
Ejemplo n.º 3
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.º 4
0
		internal virtual RdpPattern EndTagDeriv (MemoizationStore memo)
		{
			return EndTagDeriv ();
		}
Ejemplo n.º 5
0
		internal override RdpPattern TextDeriv (string s, XmlReader reader, MemoizationStore memo)
		{
			return memo.TextDeriv (LValue, s, reader).Choice (memo.TextDeriv (RValue, s, reader));
		}
Ejemplo n.º 6
0
		internal virtual RdpPattern TextOnlyDeriv (MemoizationStore store)
		{
			return this;
		}
Ejemplo n.º 7
0
		internal virtual RdpPattern StartAttDeriv (string name, string ns, MemoizationStore memo)
		{
			return StartAttDeriv (name, ns);
		}
Ejemplo n.º 8
0
		internal override RdpPattern MixedTextDeriv (MemoizationStore memo)
		{
			RdpPattern p = memo.MixedTextDeriv (Child);
			return p.PatternType == RelaxngPatternType.NotAllowed ?
				p : p.Group (this.Choice (RdpEmpty.Instance));
		}
Ejemplo n.º 9
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.º 10
0
		internal override RdpPattern TextDeriv (string s, XmlReader reader, MemoizationStore memo)
		{
			RdpPattern p = memo.TextDeriv (Child, s, reader);
			return p.PatternType == RelaxngPatternType.NotAllowed ?
				p : p.Group (this.Choice (RdpEmpty.Instance));
		}
Ejemplo n.º 11
0
		internal override RdpPattern TextOnlyDeriv (MemoizationStore memo)
		{
			return memo.TextOnlyDeriv (Child).OneOrMore ();
		}
Ejemplo n.º 12
0
		internal override RdpPattern StartTagCloseDeriv (MemoizationStore memo)
		{
			RdpPattern p = memo.StartTagCloseDeriv (LValue);
			return p.PatternType == RelaxngPatternType.NotAllowed ?
				p : p.Group (memo.StartTagCloseDeriv (RValue));
		}
Ejemplo n.º 13
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);
		}
Ejemplo n.º 14
0
		internal override RdpPattern StartTagOpenDeriv (string name, string ns, MemoizationStore memo)
		{
			RdpPattern handled = memo.StartTagOpenDeriv (LValue, name, ns);
			RdpFlip f = MakeFlip (RdpUtil.GroupFunction, RValue);
			RdpPattern x = handled.ApplyAfter (new RdpApplyAfterHandler (f.Apply));
			if (LValue.Nullable)
				return x.Choice (memo.StartTagOpenDeriv (RValue, name, ns));
			else
				return x;
		}
Ejemplo n.º 15
0
		internal virtual RdpPattern TextDeriv (string s, XmlReader reader, MemoizationStore memo)
		{
			return TextDeriv (s, reader);
		}
Ejemplo n.º 16
0
		internal override RdpPattern StartTagCloseDeriv (MemoizationStore memo)
		{
			return memo.StartTagCloseDeriv (Child).OneOrMore ();
		}
Ejemplo n.º 17
0
		internal virtual RdpPattern EmptyTextDeriv (MemoizationStore memo)
		{
			return TextDeriv (String.Empty, null, memo);
		}
Ejemplo n.º 18
0
		internal override RdpPattern StartTagCloseDeriv (MemoizationStore memo)
		{
			return RdpNotAllowed.Instance;
		}
Ejemplo n.º 19
0
		internal virtual RdpPattern MixedTextDeriv (MemoizationStore memo)
		{
			return RdpNotAllowed.Instance;
		}
Ejemplo n.º 20
0
		internal override RdpPattern TextOnlyDeriv (MemoizationStore memo)
		{
			return RdpNotAllowed.Instance;
		}
Ejemplo n.º 21
0
		internal virtual RdpPattern StartTagCloseDeriv (MemoizationStore memo)
		{
			return StartTagCloseDeriv ();
		}
Ejemplo n.º 22
0
		internal override RdpPattern StartTagOpenDeriv (string name, string ns, MemoizationStore memo)
		{
			return nameClass.Contains (name, ns) ?
				children.After (RdpEmpty.Instance) :
				RdpNotAllowed.Instance;
		}
Ejemplo n.º 23
0
		internal override RdpPattern MixedTextDeriv (MemoizationStore memo)
		{
			return this;
		}
Ejemplo n.º 24
0
		internal override RdpPattern EmptyTextDeriv (MemoizationStore memo)
		{
			return memo.EmptyTextDeriv (LValue).After (RValue);
		}
Ejemplo n.º 25
0
		internal override RdpPattern TextOnlyDeriv (MemoizationStore memo)
		{
			return memo.TextOnlyDeriv (LValue).Choice (
				memo.TextOnlyDeriv (RValue));
		}
Ejemplo n.º 26
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.º 27
0
		internal override RdpPattern StartTagOpenDeriv (string name, string ns, MemoizationStore memo)
		{
			RdpPattern lDeriv = memo.StartTagOpenDeriv (LValue, name, ns);
			return lDeriv.Choice (memo.StartTagOpenDeriv (RValue, name, ns));
		}
Ejemplo n.º 28
0
		internal override RdpPattern StartTagCloseDeriv (MemoizationStore memo)
		{
			return memo.StartTagCloseDeriv (LValue).After (RValue);
		}
Ejemplo n.º 29
0
		internal override RdpPattern EndAttDeriv (MemoizationStore memo)
		{
			return memo.EndAttDeriv (LValue).Choice (memo.EndAttDeriv (RValue));
		}
Ejemplo n.º 30
0
		internal override RdpPattern EmptyTextDeriv (MemoizationStore memo)
		{
			RdpPattern p = memo.EmptyTextDeriv (LValue);
			p = p.PatternType == RelaxngPatternType.NotAllowed ?
				p : p.Group (RValue);
			return LValue.Nullable ?
				p.Choice (memo.EmptyTextDeriv (RValue)) : p;
		}