Skip to content

std:list

The std:list module provides list manipulation utilities.

std-list.nyx
import "std:list" as list_utils;

Returns a new list with item_val appended. Original list is unchanged.

  • Parameters: list_val (list), item_val (any).
  • Returns: New list.
  • Example: auto l2 = list_utils.append([1,2], 3); // l2 is [1,2,3]

Returns a new list with item_val prepended. Original list is unchanged.

  • Parameters: list_val (list), item_val (any).
  • Returns: New list.
  • Example: auto l2 = list_utils.prepend([1,2], 0); // l2 is [0,1,2]

Checks if list_val is empty.

  • Parameters: list_val (list).
  • Returns: true or false.
  • Example: output(list_utils.is_empty([])); // true

list_utils.slice(list_val, start_index_num, [end_index_num])

Section titled “list_utils.slice(list_val, start_index_num, [end_index_num])”

Returns a new list, a slice of list_val from start_index_num up to (but not including) end_index_num. Negative indices count from end. If end_index_num is omitted, slices to the end.

  • Parameters: list_val (list), start_index_num (number), end_index_num (optional number).
  • Returns: New list.
  • Example: auto sub = list_utils.slice(["a","b","c","d"], 1, 3); // sub is ["b","c"]

list_utils.join(list_val, [separator_string])

Section titled “list_utils.join(list_val, [separator_string])”

Joins list elements into a string. Non-string elements are converted. separator_string (escapes processed) is placed between elements. Default separator is empty string.

  • Parameters: list_val (list), separator_string (optional string).
  • Returns: string.
  • Example: auto s = list_utils.join([1,2,3], "-"); // s is "1-2-3"

list_utils.each(list_val, callback_function)

Section titled “list_utils.each(list_val, callback_function)”

Calls callback_function for each element in list_val.

  • Parameters: list_val (list), callback_function (function taking one argument).
  • Returns: nyx_null.
  • Example: func p(x)={ output(x); }; list_utils.each([1,2], p);