Ejemplo n.º 1
0
        Value range(FunctionArguments arguments, SymbolTable symbol_table)
        {
            arguments.check_num_args_minimum(2);
            arguments.check_num_args_maximum(3);

            int start = arguments.get_int_argument(0, null, null, symbol_table, round_double: true);
            int stop  = arguments.get_int_argument(1, null, null, symbol_table, round_double: true);
            int step  = arguments.get_int_argument(2, null, 1, symbol_table, round_double: true);

            return(new RangeValue(start, stop, step));
        }
Ejemplo n.º 2
0
        /// <summary>
        /// C# version of Python's dictionary::get().
        /// </summary>
        static Value get(Dictionary <Value, Value> dict, FunctionArguments arguments, SymbolTable symbol_table)
        {
            arguments.check_num_args_minimum(1);
            arguments.check_num_args_maximum(2);

            var key         = arguments.get_value_argument(0, null, null, symbol_table);
            var default_val = arguments.get_value_argument(1, null, NoneValue.NONE, symbol_table);

            if (dict.ContainsKey(key))
            {
                return(dict[key]);
            }
            else
            {
                return(default_val);
            }
        }