Esempio n. 1
0
        public Boolean TryConvert(ICssValue value, Action <Tuple <T1, T2> > setResult)
        {
            var values = value as CssValueList;

            if (values != null)
            {
                values = values.Copy();
            }
            else if (value != null)
            {
                values = new CssValueList(value);
            }
            else
            {
                values = new CssValueList();
            }

            if (values.Length < MinArgs && values.Length > MaxArgs)
            {
                return(false);
            }

            var t1 = default(T1);
            var t2 = default(T2);

            if (!_first.VaryAll(values, m => t1 = m) ||
                !_second.VaryAll(values, m => t2 = m) ||
                values.Length != 0)
            {
                return(false);
            }

            setResult(Tuple.Create(t1, t2));
            return(true);
        }
Esempio n. 2
0
 public static Boolean VaryAll <T>(this IValueConverter <T> converter, CssValueList list)
 {
     return(converter.VaryAll(list, (c, v) => c.Validate(v)));
 }
Esempio n. 3
0
 public static Boolean VaryAll <T>(this IValueConverter <T> converter, CssValueList list, Action <T> setResult)
 {
     return(converter.VaryAll(list, (c, v) => c.TryConvert(v, setResult)));
 }