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); }
public static Boolean VaryStart <T>(this IValueConverter <T> converter, CssValueList list) { return(converter.VaryStart(list, (c, v) => c.Validate(v))); }
public static Boolean VaryStart <T>(this IValueConverter <T> converter, CssValueList list, Action <T> setResult) { return(converter.VaryStart(list, (c, v) => c.TryConvert(v, setResult))); }