Ejemplo n.º 1
0
 public TokenInterQuantifier(TokenInterPrimitiveEntry primitiveEntry, Interval <int> range, QuantifierMode mode)
 {
     PrimitiveEntry = primitiveEntry;
     Kind           = QuantifierHelper.GetKind(range);
     Range          = range;
     Mode           = mode;
 }
Ejemplo n.º 2
0
 public TokenInterQuantifier(TokenInterPrimitiveEntry primitiveEntry, QuantifierKind kind, QuantifierMode mode = QuantifierMode.Greedy)
 {
     PrimitiveEntry = primitiveEntry;
     Range          = QuantifierHelper.GetRange(kind);
     Kind           = kind;
     Mode           = mode;
 }
Ejemplo n.º 3
0
 public QuantifierEntry(TokenPrimitiveEntry primitiveEntry, QuantifierKind kind, QuantifierMode mode)
 {
     PrimitiveEntry = primitiveEntry;
     Kind           = kind;
     Mode           = mode;
     Range          = QuantifierHelper.GetRange(kind);
 }
Ejemplo n.º 4
0
 public ParserQuantifierEntry(ParserPrimitiveEntry primitiveEntry, QuantifierKind kind, QuantifierMode mode)
 {
     PrimitiveEntry = primitiveEntry;
     Kind           = kind;
     Range          = QuantifierHelper.GetRange(kind);
     Mode           = mode;
 }
Ejemplo n.º 5
0
            public QuantifierEntry(PrimitiveEntry primitiveEntry, Interval <int> range, QuantifierMode mode)
            {
                PrimitiveEntry = primitiveEntry;
                Kind           = QuantifierHelper.GetKind(range);
                Mode           = mode;

                Minimum = range.Minimum;
                Maximum = range.Maximum;
            }
Ejemplo n.º 6
0
            public TokenInterQuantifier OneOrMore(QuantifierMode mode = QuantifierMode.Greedy)
            {
                if (Mode == mode && mode == QuantifierMode.Greedy && QuantifierHelper.CanCollapse(Kind, QuantifierKind.OneOrMore))
                {
                    return(new TokenInterQuantifier(PrimitiveEntry, QuantifierHelper.Collapse(Kind, QuantifierKind.OneOrMore), Mode));
                }

                return(new TokenInterQuantifier(AsFragment(), QuantifierKind.OneOrMore, mode));
            }
Ejemplo n.º 7
0
            public ParserQuantifierEntry ZeroOrMore(QuantifierMode mode = QuantifierMode.Greedy)
            {
                if (Mode == mode && mode == QuantifierMode.Greedy && QuantifierHelper.CanCollapse(Kind, QuantifierKind.ZeroOrMore))
                {
                    return(new ParserQuantifierEntry(PrimitiveEntry, QuantifierHelper.Collapse(Kind, QuantifierKind.ZeroOrMore), Mode));
                }

                return(new ParserQuantifierEntry(AsFragment(), QuantifierKind.ZeroOrMore, mode));
            }
Ejemplo n.º 8
0
            public QuantifierEntry(PrimitiveEntry primitiveEntry, QuantifierKind kind, QuantifierMode mode)
            {
                PrimitiveEntry = primitiveEntry;
                Kind           = kind;
                Mode           = mode;

                var range = QuantifierHelper.GetRange(kind);

                Minimum = range.Minimum;
                Maximum = range.Maximum;
            }
Ejemplo n.º 9
0
 public ParserQuantifierEntry Exact(int count, QuantifierMode mode = QuantifierMode.Greedy)
 {
     return(new ParserQuantifierEntry(AsFragment(), QuantifierHelper.Exact(count), mode));
 }
Ejemplo n.º 10
0
 public ParserQuantifierEntry Between(int from, int to, QuantifierMode mode = QuantifierMode.Greedy)
 {
     return(new ParserQuantifierEntry(AsFragment(), QuantifierHelper.Between(from, to), mode));
 }
Ejemplo n.º 11
0
 public TokenInterQuantifier Exact(int count, QuantifierMode mode = QuantifierMode.Greedy)
 {
     return(new TokenInterQuantifier(AsFragment(), QuantifierHelper.Exact(count), mode));
 }
Ejemplo n.º 12
0
 public TokenInterQuantifier Between(int from, int to, QuantifierMode mode = QuantifierMode.Greedy)
 {
     return(new TokenInterQuantifier(AsFragment(), QuantifierHelper.Between(from, to), mode));
 }
Ejemplo n.º 13
0
 public ParserQuantifierEntry Exact(int count)
 {
     return(new ParserQuantifierEntry(new ParserRuleEntry(this), QuantifierHelper.Exact(count), QuantifierMode.Greedy));
 }
Ejemplo n.º 14
0
 public ParserQuantifierEntry Between(int from, int to)
 {
     return(new ParserQuantifierEntry(new ParserRuleEntry(this), QuantifierHelper.Between(from, to), QuantifierMode.Greedy));
 }