public Value Next() { if (++index >= maxLength) { return(new Nil()); } var newArray = new Array(); foreach (var array in arrayOfArrays.Select(item => (Array)item.Value)) { newArray.Add(array[index]); } return(newArray); }
protected static Value write(Value[] values) { switch (values.Length) { case 0: return(null); case 1: var asString = ValueAsRep(values[0]); State.ConsoleManager.ConsolePrint(asString); return(null); default: var text = values.Select(ValueAsRep).ToString(""); State.ConsoleManager.ConsolePrint(text); return(null); } }
public static object[] GetArguments(this Value[] arguments) => arguments.Select(a => a.GetArgument()).ToArray();
public static object[] GetArguments(this Value[] arguments, string[] types) { var matcher = new Matcher(); return(types.Select((t, i) => t.GetArgument(arguments[i], matcher)).ToArray()); }