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)); }
/// <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); } }