Esempio n. 1
0
        public Boolean TryConvert(ICssValue value, Action <T[]> 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)
            {
                return(false);
            }

            var items = new List <T>();

            while (values.Length != 0)
            {
                if (!_converter.VaryStart(values, m => items.Add(m)))
                {
                    return(false);
                }
            }

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