Example #1
0
        public void WriteFunction(CssFunction function)
        {
            // {name}({args})

            Func<CssValue[], CssValue> func;

            if (CssFunctions.TryGet(function.Name, out func))
            {
                var args = GetArgs(function.Arguments).ToArray();

                writer.Write(func(args));

                return;
            }

            writer.Write(function.Name);

            writer.Write("(");

            WriteValue(function.Arguments);

            writer.Write(")");
        }
Example #2
0
        public CssValue EvalFunction(CssFunction function)
        {
            Func<CssValue[], CssValue> func;

            if (CssFunctions.TryGet(function.Name, out func))
            {
                var args = GetArgs(function.Arguments).ToArray();

                return func(args);
            }

            throw new Exception($"function named '{function.Name}' not registered");
        }