Esempio n. 1
0
        public ValueRangeToken(LeoMember member, TVal from, TVal to, RangeOptions options) : base(member)
        {
            _from = from;
            _to   = to;

            _options = options;
        }
Esempio n. 2
0
 public LeoLoopContext(string name, object value, LeoMember member, int index)
 {
     Name     = name;
     Value    = value;
     Metadata = member;
     Index    = index;
 }
Esempio n. 3
0
 public ValueMaxLengthLimitedToken(LeoMember member, int max) : base(member)
 {
     if (max < 0)
     {
         throw new ArgumentOutOfRangeException(nameof(max));
     }
     _maxLength = max;
 }
Esempio n. 4
0
 public ValueMinLengthLimitedToken(LeoMember member, int min) : base(member)
 {
     if (min < 0)
     {
         throw new ArgumentOutOfRangeException(nameof(min));
     }
     _minLength = min;
 }
Esempio n. 5
0
        public ValueStringEnumToken(LeoMember member, Type enumType, bool caseSensitive) : base(member)
        {
            _enumType      = enumType ?? throw new ArgumentNullException(nameof(enumType));
            _caseSensitive = caseSensitive;

            if (!enumType.IsEnum)
            {
                throw new ArgumentOutOfRangeException(nameof(enumType), $"The type '{enumType.Name}' is not an enum and can't be used with IsEnumName.");
            }
        }
Esempio n. 6
0
        public ValueLengthLimitedToken(LeoMember member, int min, int max) : base(member)
        {
            if (min < 0)
            {
                throw new ArgumentOutOfRangeException(nameof(min));
            }
            if (max != -1 && max < min)
            {
                throw new ArgumentOutOfRangeException(nameof(max), "Max should be larger than min.");
            }

            _minLength = min;
            _maxLength = max;
        }
Esempio n. 7
0
 public void Do(string name, object value, LeoMember member, int?index = null)
 {
     if (_withNumber && index.HasValue)
     {
         _action0?.Invoke(name, value, member, index.Value);
     }
     else if (_withMember)
     {
         _action1?.Invoke(name, value, member);
     }
     else
     {
         _action2?.Invoke(name, value);
     }
 }
Esempio n. 8
0
 public TVal Do(string name, object value, LeoMember member, int?index = null)
 {
     if (_withNumber && index.HasValue)
     {
         return(_action0 is null ? default : _action0.Invoke(name, value, member, index.Value));
     }
     else if (_withMember)
     {
         return(_action1 is null ? default : _action1.Invoke(name, value, member));
     }
     else
     {
         return(_action2 is null ? default : _action2.Invoke(name, value));
     }
 }
Esempio n. 9
0
        public ValueRangeToken(LeoMember member, object from, object to, RangeOptions options) : base(member)
        {
            if (from is null || to is null)
            {
                _from = default;
                _to   = default;
                _returnFalseDirectly = true;
            }

            if (!_returnFalseDirectly && from is IComparable from0)
            {
                _from = from0;
            }
            else
            {
                _from = default;
                _returnFalseDirectly = true;
            }

            if (!_returnFalseDirectly && to is IComparable to0)
            {
                _to = to0;
            }
            else
            {
                _to = default;
                _returnFalseDirectly = true;
            }

            if (!_returnFalseDirectly && _from !.CompareTo(_to) > 0)
            {
                _returnFalseDirectly = true;
            }

            _options = options;
        }
Esempio n. 10
0
 public ValueGreaterThanToken(LeoMember member, TVal valueToCompare) : base(member)
 {
     _valueToCompare       = valueToCompare;
     _typeOfValueToCompare = typeof(TVal);
 }
Esempio n. 11
0
 public ValueRequiredTypeToken(LeoMember member, Type type) : base(member)
 {
     _type = type ?? throw new ArgumentNullException(nameof(type));
 }
Esempio n. 12
0
 public ValueEnumToken(LeoMember member, Type enumType) : base(member)
 {
     _enumType = enumType ?? throw new ArgumentNullException(nameof(enumType));
 }
Esempio n. 13
0
 public ValueEqualToken(LeoMember member, object valueToCompare, IEqualityComparer comparer) : base(member)
 {
     _valueToCompare       = valueToCompare;
     _typeOfValueToCompare = _valueToCompare.GetType();
     _comparer             = comparer;
 }
Esempio n. 14
0
 public ValueRegularExpressionToken(LeoMember member, string expression, RegexOptions options) : base(member)
 {
     _regexFunc = x => CreateRegex(expression, options);
 }
Esempio n. 15
0
 public ValueNullToken(LeoMember member) : base(member)
 {
 }
Esempio n. 16
0
 public ValueLessThanOrEqualToken(LeoMember member, object valueToCompare) : base(member)
 {
     _valueToCompare       = valueToCompare;
     _typeOfValueToCompare = _valueToCompare.GetType();
 }
Esempio n. 17
0
 protected ValueToken(LeoMember member)
 {
     __metadata_LeoMember = member;
 }
Esempio n. 18
0
 public ValueRequiredTypesToken(LeoMember member, params Type[] types) : base(member)
 {
     _types = types;
 }
Esempio n. 19
0
 public ValueEqualToken(LeoMember member, TVal valueToCompare, IEqualityComparer <TVal> comparer) : base(member)
 {
     _valueToCompare = valueToCompare;
     _comparer       = comparer;
 }
Esempio n. 20
0
 public ValueLessThanOrEqualToken(LeoMember member, TVal valueToCompare) : base(member)
 {
     _valueToCompare       = valueToCompare;
     _typeOfValueToCompare = typeof(TVal);
 }
Esempio n. 21
0
 public ValueStringEnumToken(LeoMember member, bool caseSensitive) : base(member, typeof(TEnum), caseSensitive)
 {
 }
Esempio n. 22
0
 public ValueEmptyToken(LeoMember member) : base(member)
 {
 }
Esempio n. 23
0
 public ValueRegularExpressionToken(LeoMember member, Func <object, string> expressionFunc, RegexOptions options) : base(member)
 {
     _regexFunc = x => CreateRegex(expressionFunc(x), options);
 }
Esempio n. 24
0
 public ValueRegularExpressionToken(LeoMember member, Func <object, Regex> regexFunc) : base(member)
 {
     _regexFunc = regexFunc;
 }
Esempio n. 25
0
 public ValueEnumToken(LeoMember member) : base(member, typeof(TEnum))
 {
 }
Esempio n. 26
0
 public ValueAnyToken(LeoMember member, Func <TItem, bool> func) : base(member)
 {
     _func = func;
 }
Esempio n. 27
0
 public ValueRequiredTypeToken(LeoMember member) : base(member, typeof(T))
 {
 }
Esempio n. 28
0
 public ValueFuncToken(LeoMember member, Func <TVal, CustomVerifyResult> func) : base(member)
 {
     _func = func;
 }
Esempio n. 29
0
 public ValueNotInToken(LeoMember member, ICollection <TVal> objects) : base(member)
 {
     _objects = objects ?? System.Array.Empty <TVal>();
 }
Esempio n. 30
0
 public ValueRegularExpressionToken(LeoMember member, Regex regex) : base(member)
 {
     _regexFunc = x => regex;
 }