Experimental
Building blocks for composing lists.
List
An ordered collection (also known as a sequence) disallowing duplicate elements. List is composed out of Iterable
, therefore it provides custom enumeration behavior that is similar to array (enumerates only on the elements of the list).
List is a base trait and is meant to be part of a composition, since all of its API is private except for the length
property.
Examples:
var { List } = require("util/list"); var MyList = List.compose({ add: function add(item1, item2, /*item3...*/) { Array.slice(arguments).forEach(this._add.bind(this)); }, remove: function remove(item1, item2, /*item3...*/) { Array.slice(arguments).forEach(this._remove.bind(this)); } }); MyList('foo', 'bar', 'baz').length == 3; // true new MyList('new', 'keyword').length == 2; // true MyList.apply(null, [1, 2, 3]).length == 3; // true let list = MyList(); list.length == 0; // true list.add(1, 2, 3) == 3; // true
Properties
length
Number of elements in this list.