Пример #1
0
        public static IArgument Single(CharSource source, ref char chr, Dictionary <string, IFunction> funcs)
        {
            switch (chr)
            {
            case '"':
                return(Literals.String(source, ref chr));

            case '{':
                return(Collections.Dictionary(source, ref chr, funcs));

            case '[':
                return(Collections.Array(source, ref chr, funcs));

            case '(':
                return(Evaluatable.Function(source, ref chr, funcs));

            case '<':
                return(Evaluatable.Executable(source, ref chr, funcs));

            case '/':
                return(Literals.TypeName(source, ref chr));

            case '!':
                return(new ResultArgument(source, ref chr));

            default:
                return(Literals.Default(source, ref chr));
            }
        }