Пример #1
0
        public override IExpression Clone()
        {
            var clone = new CharacterClassExpression(_alphabet, _random, _maxInverseLength)
            {
                RepeatRange     = RepeatRange?.Clone(),
                ExpansionLength = ExpansionLength
            };

            clone.AddCharacters(_characterList);

            return(clone);
        }
Пример #2
0
        public override IExpression Clone()
        {
            var clone = new ConcatenationExpression(_random)
            {
                RepeatRange     = RepeatRange?.Clone(),
                ExpansionLength = ExpansionLength
            };

            clone.AppendRange(_elementaryExpressions.Select(x => x.Clone()));

            return(clone);
        }
Пример #3
0
 public override IExpression Clone() =>
 new UnionExpression(_intersectExpressions.Select(x => x.Clone()).ToList(), _random)
 {
     RepeatRange     = RepeatRange?.Clone(),
     ExpansionLength = ExpansionLength
 };