cstd
Version:
CoffeeScript Standart Library
1,549 lines (1,545 loc) • 38 kB
HTML
<html>
<head>
<meta charset='UTF-8'>
<title>CoffeeScript standarts</title>
<script src='../javascript/application.js'></script>
<script src='../javascript/search.js'></script>
<link rel='stylesheet' href='../stylesheets/application.css' type='text/css'>
</head>
<body>
<div id='base' data-path='../'></div>
<div id='header'>
<div id='menu'>
<a href='../extra/README.md.html' title='CSTD'>
CSTD
</a>
»
<a href='../alphabetical_index.html' title='Index'>
Index
</a>
»
<span class='title'>List</span>
</div>
</div>
<div id='content'>
<h1>
Class:
List
</h1>
<table class='box'>
<tr>
<td>Defined in:</td>
<td>lib/list.coffee</td>
</tr>
<tr>
<td>Inherits:</td>
<td>
<a href='../class/CSObject.html'>CSObject</a>
</td>
</tr>
</table>
<h2>Overview</h2>
<div class='docstring'>
<p>Список на основе узлов <code>Node</code>. Есть внутренний указатель,
который перемещается методами <code>#next()</code>, <code>#prev()</code>,
<code>#begin()</code>, <code>#end()</code> и значение получается всегда через
метод <code>#get()</code>.</p><p>В результате вставок указатель всегда
указывает на тот же самый элемент, а индекс указателя <code>#index</code>
даптивно подстраивается. То же самое по возможности и при
изъятии узла, но если изымается элемент, на котором стоит указатель,
тогда он смещается к ближайшему узлу в сторону начала, а если
это не возможно, то ближайшему узлу в сторону конца.</p>
</div>
<div class='tags'>
</div>
<h2>Property Summary</h2>
<dl class='properties'>
<dt id='_f-property'>
<span class='signature'>
(Node)
<b>
_f
</b>
</span>
</dt>
<dd class='desc'>
начало очереди для взятия O(1)
</dd>
<dt id='_b-property'>
<span class='signature'>
(Node)
<b>
_b
</b>
</span>
</dt>
<dd class='desc'>
конец очереди для добавления O(1)
</dd>
<dt id='_p-property'>
<span class='signature'>
(Node)
<b>
_p
</b>
</span>
</dt>
<dd class='desc'>
Указатель на текущий элемент
</dd>
<dt id='length-property'>
<span class='signature'>
(Number)
<b>
length
</b>
</span>
</dt>
<dd class='desc'>
@read-only длина очереди
</dd>
</dl>
<h2>Class Method Summary</h2>
<ul class='summary'>
<li>
<span class='signature'>
<a href='#fromArray-static'>
.
(List)
<b>fromArray</b><span>(array)</span>
</a>
</span>
<span class='desc'>
Создаёт список на основе массива с указателем на первом элементе
</span>
</li>
</ul>
<h2>Instance Method Summary</h2>
<ul class='summary'>
<li>
<span class='signature'>
<a href='#pushBack-dynamic'>
#
(List)
<b>pushBack</b><span>(some)</span>
</a>
</span>
<span class='desc'>
Добавление <em>одного</em> элемента в список в конец
</span>
</li>
<li>
<span class='signature'>
<a href='#pushFront-dynamic'>
#
(List)
<b>pushFront</b><span>(some)</span>
</a>
</span>
<span class='desc'>
Добавление одной сущности <code>some</code> в начало списка.
</span>
</li>
<li>
<span class='signature'>
<a href='#popFront-dynamic'>
#
(*)
<b>popFront</b><span>()</span>
</a>
</span>
<span class='desc'>
Взятие первого элемента из очереди.
</span>
</li>
<li>
<span class='signature'>
<a href='#popBack-dynamic'>
#
(*)
<b>popBack</b><span>()</span>
</a>
</span>
<span class='desc'>
Изымает и возвращает последнее значение.
</span>
</li>
<li>
<span class='signature'>
<a href='#append-dynamic'>
#
(List)
<b>append</b><span>(some)</span>
</a>
</span>
<span class='desc'>
Присоединяет сущность <code>some</code> после указателя.
</span>
</li>
<li>
<span class='signature'>
<a href='#prepend-dynamic'>
#
(List)
<b>prepend</b><span>(some)</span>
</a>
</span>
<span class='desc'>
Присоединяет сущность <code>some</code> перед указателем.
</span>
</li>
<li>
<span class='signature'>
<a href='#add-dynamic'>
#
(List)
<b>add</b><span>(first, list...)</span>
</a>
</span>
<span class='desc'>
Присоединяет сущности <code>some</code> в самый конец списка
</span>
</li>
<li>
<span class='signature'>
<a href='#go-dynamic'>
#
(List|null)
<b>go</b><span>(step)</span>
</a>
</span>
<span class='desc'>
Перемещает указатель на <code>step</code> шагов относительно текущего положения.
</span>
</li>
<li>
<span class='signature'>
<a href='#next-dynamic'>
#
(List|null)
<b>next</b><span>()</span>
</a>
</span>
<span class='desc'>
То же, что и <code>#go(1)</code>
</span>
</li>
<li>
<span class='signature'>
<a href='#prev-dynamic'>
#
(List|null)
<b>prev</b><span>()</span>
</a>
</span>
<span class='desc'>
То же, что и <code>#go(-1)</code>
</span>
</li>
<li>
<span class='signature'>
<a href='#begin-dynamic'>
#
(List|null)
<b>begin</b><span>()</span>
</a>
</span>
<span class='desc'>
Перемещает указатель на самый <em>первый</em> узел
</span>
</li>
<li>
<span class='signature'>
<a href='#end-dynamic'>
#
(List|null)
<b>end</b><span>()</span>
</a>
</span>
<span class='desc'>
Перемещает указатель на самый <em>последний</em> узел
</span>
</li>
<li>
<span class='signature'>
<a href='#getFront-dynamic'>
#
(*)
<b>getFront</b><span>()</span>
</a>
</span>
<span class='desc'>
Возвращает значение первого узла без смещения указателя и без изменений списка.
</span>
</li>
<li>
<span class='signature'>
<a href='#getBack-dynamic'>
#
(*)
<b>getBack</b><span>()</span>
</a>
</span>
<span class='desc'>
Возвращает значение последнего узла без смещения указателя и без изменения списка.
</span>
</li>
<li>
<span class='signature'>
<a href='#get-dynamic'>
#
(*)
<b>get</b><span>()</span>
</a>
</span>
<span class='desc'>
Возвращает значение узла "под" указателем, не меняя список
</span>
</li>
<li>
<span class='signature'>
<a href='#currentNode-dynamic'>
#
(*)
<b>currentNode</b><span>()</span>
</a>
</span>
<span class='desc'>
Возвразает сам <em>узел</em> указателя
</span>
</li>
<li>
<span class='signature'>
<a href='#swap-dynamic'>
#
(List)
<b>swap</b><span>(rev)</span>
</a>
</span>
<span class='desc'>
Переставляет местами <em>значения</em> узлов (след./пред.
</span>
</li>
<li>
<span class='signature'>
<a href='#set-dynamic'>
#
(List)
<b>set</b><span>(some)</span>
</a>
</span>
<span class='desc'>
Устанавливает значение указателя на <code>some</code>
</span>
</li>
<li>
<span class='signature'>
<a href='#erase-dynamic'>
~
(List|Array<Node>)
<b>erase</b><span>(start, end, returnNodes)</span>
</a>
</span>
<span class='desc'>
<p>Удаляет элемент или несколько из списка, начиная с позиции <code>start</code> и до позиции <code>end</code> (от начала),
если <code>returnNodes</code> равна <code>true</code>, то удалённые узлы
вернутся в виде массива из метода.</p>
</span>
</li>
<li>
<span class='signature'>
<a href='#clear-dynamic'>
#
(List|null)
<b>clear</b><span>()</span>
</a>
</span>
<span class='desc'>
Очистка всего списка.
</span>
</li>
<li>
<span class='signature'>
<a href='#destructor-dynamic'>
#
(null)
<b>destructor</b><span>()</span>
</a>
</span>
<span class='desc'>
Удаляет все ссылки и очищает список, разрушая все узлы
</span>
</li>
</ul>
<h2>
<small>Inherited Method Summary</small>
<h3 class='inherited'>
Methods inherited from
<a href='../class/CSObject.html'>CSObject</a>
</h3>
<p class='inherited'>
<a href='../class/CSObject.html#destructor-dynamic'>#destructor</a>
</p>
</h2>
<h2>Class Method Details</h2>
<div class='methods'>
<div class='method_details'>
<p class='signature' id='fromArray-static'>
.
(List)
<b>fromArray</b><span>(array)</span>
<br>
</p>
<div class='docstring'>
<p>Создаёт список на основе массива с указателем на первом элементе</p>
</div>
<div class='tags'>
<h3>Parameters:</h3>
<ul class='param'>
<li>
<span class='name'>array</span>
<span class='type'>
(
<tt>Array<*></tt>
)
</span>
—
<span class='desc'>массив сущностей </span>
</li>
</ul>
<h3>Throws:</h3>
<ul class='throw'>
<li>
<span class='type'></span>
(
<tt>Error</tt>
)
—
<span class='desc'>если аргументов нет или больше одного </span>
</li>
<li>
<span class='type'></span>
(
<tt>TypeError</tt>
)
—
<span class='desc'>если <code>array</code> не массив </span>
</li>
</ul>
<h3>Returns:</h3>
<ul class='return'>
<li>
<span class='type'></span>
<tt><a href='../class/List.html'>List</a></tt>
</li>
</ul>
</div>
</div>
</div>
<h2>Constructor Details</h2>
<div class='methods'>
<div class='method_details'>
<p class='signature' id='constructor-dynamic'>
#
(void)
<b>constructor</b><span>()</span>
<br>
</p>
<div class='docstring'>
<p>Создаёт пустой список, устанавливает значения</p>
</div>
<div class='tags'>
<h3>Throws:</h3>
<ul class='throw'>
<li>
<span class='type'></span>
(
<tt>TypeError</tt>
)
—
<span class='desc'>при наличии аргументов </span>
</li>
</ul>
</div>
</div>
</div>
<h2>Instance Method Details</h2>
<div class='methods'>
<div class='method_details'>
<p class='signature' id='pushBack-dynamic'>
#
(List)
<b>pushBack</b><span>(some)</span>
<br>
</p>
<div class='docstring'>
<p>Добавление <em>одного</em> элемента в список в конец</p>
</div>
<div class='tags'>
<h3>Parameters:</h3>
<ul class='param'>
<li>
<span class='name'>some</span>
<span class='type'>
(
<tt>*</tt>
)
</span>
—
<span class='desc'>сущность для добавления в конец </span>
</li>
</ul>
<h3>Throws:</h3>
<ul class='throw'>
<li>
<span class='type'></span>
(
<tt>TypeError</tt>
)
—
<span class='desc'>если сущности нет или она не одна </span>
</li>
</ul>
<h3>Returns:</h3>
<ul class='return'>
<li>
<span class='type'></span>
(
<tt><a href='../class/List.html'>List</a></tt>
)
—
<span class='desc'><code>this</code> </span>
</li>
</ul>
</div>
</div>
<div class='method_details'>
<p class='signature' id='pushFront-dynamic'>
#
(List)
<b>pushFront</b><span>(some)</span>
<br>
</p>
<div class='docstring'>
<p>Добавление одной сущности <code>some</code> в начало списка.
При этом указатль остаётся на том же элементе, где и был,
а в случае пустого индекса указывает на новый узел.
Индекс же следит за указателем всегда.</p>
</div>
<div class='tags'>
<h3>Parameters:</h3>
<ul class='param'>
<li>
<span class='name'>some</span>
<span class='type'>
(
<tt>*</tt>
)
</span>
—
<span class='desc'>сущность для вставки </span>
</li>
</ul>
<h3>Throws:</h3>
<ul class='throw'>
<li>
<span class='type'></span>
(
<tt>TypeError</tt>
)
—
<span class='desc'>если сущности нет или она не одна </span>
</li>
</ul>
<h3>Returns:</h3>
<ul class='return'>
<li>
<span class='type'></span>
(
<tt><a href='../class/List.html'>List</a></tt>
)
—
<span class='desc'><code>this</code> </span>
</li>
</ul>
</div>
</div>
<div class='method_details'>
<p class='signature' id='popFront-dynamic'>
#
(*)
<b>popFront</b><span>()</span>
<br>
</p>
<div class='docstring'>
<p>Взятие первого элемента из очереди. Указатель не смещается,
если не удалён элемент указателя. Если же удалён, то он
переходит на предыдущий элемент.</p>
</div>
<div class='tags'>
<h3>Throws:</h3>
<ul class='throw'>
<li>
<span class='type'></span>
(
<tt>Error</tt>
)
—
<span class='desc'>если список пуст </span>
</li>
<li>
<span class='type'></span>
(
<tt>TypeError</tt>
)
—
<span class='desc'>если переданы аргументы </span>
</li>
</ul>
<h3>Returns:</h3>
<ul class='return'>
<li>
<span class='type'></span>
(
<tt>*</tt>
)
—
<span class='desc'>some значение первого узла </span>
</li>
</ul>
</div>
</div>
<div class='method_details'>
<p class='signature' id='popBack-dynamic'>
#
(*)
<b>popBack</b><span>()</span>
<br>
</p>
<div class='docstring'>
<p>Изымает и возвращает последнее значение.</p>
</div>
<div class='tags'>
<h3>Throws:</h3>
<ul class='throw'>
<li>
<span class='type'></span>
(
<tt>Error</tt>
)
—
<span class='desc'>если список пуст </span>
</li>
<li>
<span class='type'></span>
(
<tt>TypeError</tt>
)
—
<span class='desc'>если переданы аргументы </span>
</li>
</ul>
<h3>Returns:</h3>
<ul class='return'>
<li>
<span class='type'></span>
(
<tt>*</tt>
)
—
<span class='desc'>some значение последнего узла </span>
</li>
</ul>
</div>
</div>
<div class='method_details'>
<p class='signature' id='append-dynamic'>
#
(List)
<b>append</b><span>(some)</span>
<br>
</p>
<div class='docstring'>
<p>Присоединяет сущность <code>some</code> после указателя.</p>
</div>
<div class='tags'>
<h3>Parameters:</h3>
<ul class='param'>
<li>
<span class='name'>some</span>
<span class='type'>
(
<tt>*</tt>
)
</span>
—
<span class='desc'>вставляемое значение </span>
</li>
</ul>
<h3>Throws:</h3>
<ul class='throw'>
<li>
<span class='type'></span>
(
<tt>TypeError</tt>
)
—
<span class='desc'>если нет сущности или она не одна </span>
</li>
</ul>
<h3>Returns:</h3>
<ul class='return'>
<li>
<span class='type'></span>
(
<tt><a href='../class/List.html'>List</a></tt>
)
—
<span class='desc'><code>this</code> </span>
</li>
</ul>
</div>
</div>
<div class='method_details'>
<p class='signature' id='prepend-dynamic'>
#
(List)
<b>prepend</b><span>(some)</span>
<br>
</p>
<div class='docstring'>
<p>Присоединяет сущность <code>some</code> перед указателем.</p>
</div>
<div class='tags'>
<h3>Parameters:</h3>
<ul class='param'>
<li>
<span class='name'>some</span>
<span class='type'>
(
<tt>*</tt>
)
</span>
—
<span class='desc'>вставляемое значение </span>
</li>
</ul>
<h3>Throws:</h3>
<ul class='throw'>
<li>
<span class='type'></span>
(
<tt>TypeError</tt>
)
—
<span class='desc'>если нет сущности или она не одна </span>
</li>
</ul>
<h3>Returns:</h3>
<ul class='return'>
<li>
<span class='type'></span>
(
<tt><a href='../class/List.html'>List</a></tt>
)
—
<span class='desc'><code>this</code> </span>
</li>
</ul>
</div>
</div>
<div class='method_details'>
<p class='signature' id='add-dynamic'>
#
(List)
<b>add</b><span>(first, list...)</span>
<br>
</p>
<div class='docstring'>
<p>Присоединяет сущности <code>some</code> в самый конец списка</p>
</div>
<div class='tags'>
<h3>Parameters:</h3>
<ul class='param'>
<li>
<span class='name'>some...</span>
<span class='type'>
(
<tt>*...</tt>
)
</span>
—
<span class='desc'>добавляемые значения подряд через зяпятую </span>
</li>
</ul>
<h3>Throws:</h3>
<ul class='throw'>
<li>
<span class='type'></span>
(
<tt>TypeError</tt>
)
—
<span class='desc'>если нет ни одной сущности </span>
</li>
</ul>
<h3>Returns:</h3>
<ul class='return'>
<li>
<span class='type'></span>
(
<tt><a href='../class/List.html'>List</a></tt>
)
—
<span class='desc'><code>this</code> </span>
</li>
</ul>
</div>
</div>
<div class='method_details'>
<p class='signature' id='go-dynamic'>
#
(List|null)
<b>go</b><span>(step)</span>
<br>
</p>
<div class='docstring'>
<p>Перемещает указатель на <code>step</code> шагов относительно текущего положения.
Если <code>step</code> < 0 тогда двигаемся к началу, а иначе к концу списка.</p><p><em>Если шаги выходят за рамки, то возвращается null.</em></p>
</div>
<div class='tags'>
<h3>Parameters:</h3>
<ul class='param'>
<li>
<span class='name'>step</span>
<span class='type'>
(
<tt>Number</tt>
)
</span>
—
<span class='desc'>на сколько шагов идём и в какую сторону </span>
</li>
</ul>
<h3>Throws:</h3>
<ul class='throw'>
<li>
<span class='type'></span>
(
<tt>Error</tt>
)
—
<span class='desc'>если не указан <code>step</code> или аргументов больше 1 </span>
</li>
<li>
<span class='type'></span>
(
<tt>TypeError</tt>
)
—
<span class='desc'>если шаги указаны не числом </span>
</li>
</ul>
<h3>Returns:</h3>
<ul class='return'>
<li>
<span class='type'></span>
(
<tt>List|null</tt>
)
—
<span class='desc'><code>this</code> или признак выхода за границы </span>
</li>
</ul>
</div>
</div>
<div class='method_details'>
<p class='signature' id='next-dynamic'>
#
(List|null)
<b>next</b><span>()</span>
<br>
</p>
<div class='docstring'>
<p>То же, что и <code>#go(1)</code></p>
</div>
<div class='tags'>
<h3>Throws:</h3>
<ul class='throw'>
<li>
<span class='type'></span>
(
<tt>Error</tt>
)
—
<span class='desc'>если переданы аргументы </span>
</li>
</ul>
<h3>Returns:</h3>
<ul class='return'>
<li>
<span class='type'></span>
(
<tt>List|null</tt>
)
—
<span class='desc'><code>this</code> или признак, что указатель уже в конце </span>
</li>
</ul>
</div>
</div>
<div class='method_details'>
<p class='signature' id='prev-dynamic'>
#
(List|null)
<b>prev</b><span>()</span>
<br>
</p>
<div class='docstring'>
<p>То же, что и <code>#go(-1)</code></p>
</div>
<div class='tags'>
<h3>Throws:</h3>
<ul class='throw'>
<li>
<span class='type'></span>
(
<tt>Error</tt>
)
—
<span class='desc'>если переданы аргументы </span>
</li>
</ul>
<h3>Returns:</h3>
<ul class='return'>
<li>
<span class='type'></span>
(
<tt>List|null</tt>
)
—
<span class='desc'><code>this</code> или признак, что указатель уже в начале </span>
</li>
</ul>
</div>
</div>
<div class='method_details'>
<p class='signature' id='begin-dynamic'>
#
(List|null)
<b>begin</b><span>()</span>
<br>
</p>
<div class='docstring'>
<p>Перемещает указатель на самый <em>первый</em> узел</p>
</div>
<div class='tags'>
<h3>Throws:</h3>
<ul class='throw'>
<li>
<span class='type'></span>
(
<tt>Error</tt>
)
—
<span class='desc'>если переданы аргументы </span>
</li>
</ul>
<h3>Returns:</h3>
<ul class='return'>
<li>
<span class='type'></span>
(
<tt>List|null</tt>
)
—
<span class='desc'><code>this</code> или признак пустого списка </span>
</li>
</ul>
</div>
</div>
<div class='method_details'>
<p class='signature' id='end-dynamic'>
#
(List|null)
<b>end</b><span>()</span>
<br>
</p>
<div class='docstring'>
<p>Перемещает указатель на самый <em>последний</em> узел</p>
</div>
<div class='tags'>
<h3>Throws:</h3>
<ul class='throw'>
<li>
<span class='type'></span>
(
<tt>Error</tt>
)
—
<span class='desc'>если переданы аргументы </span>
</li>
</ul>
<h3>Returns:</h3>
<ul class='return'>
<li>
<span class='type'></span>
(
<tt>List|null</tt>
)
—
<span class='desc'><code>this</code> или признак пустого списка </span>
</li>
</ul>
</div>
</div>
<div class='method_details'>
<p class='signature' id='getFront-dynamic'>
#
(*)
<b>getFront</b><span>()</span>
<br>
</p>
<div class='docstring'>
<p>Возвращает значение первого узла без смещения указателя
и без изменений списка.</p>
</div>
<div class='tags'>
<h3>Throws:</h3>
<ul class='throw'>
<li>
<span class='type'></span>
(
<tt>Error</tt>
)
—
<span class='desc'>если список пуст или переданы аругменты </span>
</li>
</ul>
<h3>Returns:</h3>
<ul class='return'>
<li>
<span class='type'></span>
(
<tt>*</tt>
)
—
<span class='desc'>значение первого узла </span>
</li>
</ul>
</div>
</div>
<div class='method_details'>
<p class='signature' id='getBack-dynamic'>
#
(*)
<b>getBack</b><span>()</span>
<br>
</p>
<div class='docstring'>
<p>Возвращает значение последнего узла без смещения указателя
и без изменения списка.</p>
</div>
<div class='tags'>
<h3>Throws:</h3>
<ul class='throw'>
<li>
<span class='type'></span>
(
<tt>Error</tt>
)
—
<span class='desc'>если список пуст или переданы аругменты </span>
</li>
</ul>
<h3>Returns:</h3>
<ul class='return'>
<li>
<span class='type'></span>
(
<tt>*</tt>
)
—
<span class='desc'>значение последнего узла </span>
</li>
</ul>
</div>
</div>
<div class='method_details'>
<p class='signature' id='get-dynamic'>
#
(*)
<b>get</b><span>()</span>
<br>
</p>
<div class='docstring'>
<p>Возвращает значение узла "под" указателем, не меняя список</p>
</div>
<div class='tags'>
<h3>Throws:</h3>
<ul class='throw'>
<li>
<span class='type'></span>
(
<tt>Error</tt>
)
—
<span class='desc'>если список пуст или переданы аругменты </span>
</li>
</ul>
<h3>Returns:</h3>
<ul class='return'>
<li>
<span class='type'></span>
(
<tt>*</tt>
)
—
<span class='desc'>значение узла указателя </span>
</li>
</ul>
</div>
</div>
<div class='method_details'>
<p class='signature' id='currentNode-dynamic'>
#
(*)
<b>currentNode</b><span>()</span>
<br>
</p>
<div class='docstring'>
<p>Возвразает сам <em>узел</em> указателя</p>
</div>
<div class='tags'>
<h3>Throws:</h3>
<ul class='throw'>
<li>
<span class='type'></span>
(
<tt>Error</tt>
)
—
<span class='desc'>если список пуст или переданы аругменты </span>
</li>
</ul>
<h3>Returns:</h3>
<ul class='return'>
<li>
<span class='type'></span>
(
<tt>*</tt>
)
—
<span class='desc'>узел указателя </span>
</li>
</ul>
</div>
</div>
<div class='method_details'>
<p class='signature' id='swap-dynamic'>
#
(List)
<b>swap</b><span>(rev)</span>
<br>
</p>
<div class='docstring'>
<p>Переставляет местами <em>значения</em> узлов
(след./пред. относительно указателя). Если <code>rev</code> не равен <code>true</code>,
томеняемся со следующим узлом от указателя, иначе -- с прудыдущим.</p>
</div>
<div class='tags'>
<h3>Throws:</h3>
<ul class='throw'>
<li>
<span class='type'></span>
(
<tt>Error</tt>
)
—
<span class='desc'>если в списке менее 2-ух элементов </span>
</li>
<li>
<span class='type'></span>
(
<tt>Error</tt>
)
—
<span class='desc'>если пытаемся махнуться со слледующим в конце </span>
</li>
<li>
<span class='type'></span>
(
<tt>Error</tt>
)
—
<span class='desc'>если пытаемся махнуться с предыдущим в начале </span>
</li>
</ul>
<h3>Returns:</h3>
<ul class='return'>
<li>
<span class='type'></span>
(
<tt><a href='../class/List.html'>List</a></tt>
)
—
<span class='desc'><code>this</code> </span>
</li>
</ul>
</div>
</div>
<div class='method_details'>
<p class='signature' id='set-dynamic'>
#
(List)
<b>set</b><span>(some)</span>
<br>
</p>
<div class='docstring'>
<p>Устанавливает значение указателя на <code>some</code></p>
</div>
<div class='tags'>
<h3>Throws:</h3>
<ul class='throw'>
<li>
<span class='type'></span>
(
<tt>Error</tt>
)
—
<span class='desc'>если список пуст или аргументов не 1 </span>
</li>
</ul>
<h3>Returns:</h3>
<ul class='return'>
<li>
<span class='type'></span>
(
<tt><a href='../class/List.html'>List</a></tt>
)
—
<span class='desc'><code>this</code> </span>
</li>
</ul>
</div>
</div>
<div class='method_details'>
<p class='signature' id='erase-dynamic'>
~
(List|Array<Node>)
<b>erase</b><span>(start, end, returnNodes)</span>
<br>
~
(List|Array<Node>)
<b>erase</b><span>(start, returnNodes)</span>
<br>
</p>
<div class='docstring'>
<p>Удаляет элемент или несколько из списка, начиная
с позиции <code>start</code> и до позиции <code>end</code> (от начала),
если <code>returnNodes</code> равна <code>true</code>, то удалённые узлы
вернутся в виде массива из метода.
Если <code>end</code> не установлено, то удаляется только элемент
с индексом <code>start</code></p>
</div>
<div class='tags'>
<div class='overloads'>
<h3>Overloads:</h3>
<div class='overload'>
<p class='signature'>
~
(List|Array<Node>)
<b>erase</b><span>(start, end, returnNodes)</span>
</p>
<div class='docstring'>
<p>Удаление диапазона от <code>start</code> до <code>end</code> включительно</p>
</div>
<div class='tags'>
<h3>Parameters:</h3>
<ul class='param'>
<li>
<span class='name'>start</span>
<span class='type'>
(
<tt>Number</tt>
)
</span>
—
<span class='desc'>начальная позиция для удаления </span>
</li>
<li>
<span class='name'>end</span>
<span class='type'>
(
<tt>Number</tt>
)
</span>
—
<span class='desc'>последняя позиция </span>
</li>
<li>
<span class='name'>returnNodes</span>
<span class='type'>
(
<tt>Boolean</tt>
)
</span>
—
<span class='desc'>возвращать ли узлы [default = no] </span>
</li>
</ul>
<h3>Throws:</h3>
<ul class='throw'>
<li>
<span class='type'></span>
(
<tt>RangeError</tt>
)
—
<span class='desc'>если <code>start</code> < 0 или <code>end</code> >= <code>#length</code> </span>
</li>
<li>
<span class='type'></span>
(
<tt>RangeError</tt>
)
—
<span class='desc'>если <code>start</code> > <code>end</code> </span>
</li>
<li>
<span class='type'></span>
(
<tt>TypeError</tt>
)
—
<span class='desc'>если аргументов многовато </span>
</li>
<li>
<span class='type'></span>
(
<tt>TypeError</tt>
)
—
<span class='desc'>если типы аргументов не правильные </span>
</li>
</ul>
<h3>Returns:</h3>
<ul class='return'>
<li>
<span class='type'></span>
(
<tt>List|Array<Node></tt>
)
—
<span class='desc'><code>this</code> или массив удалённых узлов, если <code>returnNodes</code> равен <code>yes</code> </span>
</li>
</ul>
</div>
</div>
<div class='overload'>
<p class='signature'>
~
(List|Array<Node>)
<b>erase</b><span>(start, returnNodes)</span>
</p>
<div class='docstring'>
<p>Удаление диапазона от <code>start</code> до <code>end</code> включительно</p>
</div>
<div class='tags'>
<h3>Parameters:</h3>
<ul class='param'>
<li>
<span class='name'>start</span>
<span class='type'>
(
<tt>Number</tt>
)
</span>
—
<span class='desc'>начальная позиция для удаления </span>
</li>
<li>
<span class='name'>returnNodes</span>
<span class='type'>
(
<tt>Boolean</tt>
)
</span>
—
<span class='desc'>возвращать ли узлы [default = no] </span>
</li>
</ul>
<h3>Throws:</h3>
<ul class='throw'>
<li>
<span class='type'></span>
(
<tt>RangeError</tt>
)
—
<span class='desc'>если <code>start</code> < 0 </span>
</li>
<li>
<span class='type'></span>
(
<tt>TypeError</tt>
)
—
<span class='desc'>если аргументов многовато </span>
</li>
<li>
<span class='type'></span>
(
<tt>TypeError</tt>
)
—
<span class='desc'>если типы аргументов не правильные </span>
</li>
</ul>
<h3>Returns:</h3>
<ul class='return'>
<li>
<span class='type'></span>
(
<tt>List|Array<Node></tt>
)
—
<span class='desc'><code>this</code> или массив удалённых узлов, если <code>returnNodes</code> равен <code>yes</code> </span>
</li>
</ul>
</div>
</div>
</div>
</div>
</div>
<div class='method_details'>
<p class='signature' id='clear-dynamic'>
#
(List|null)
<b>clear</b><span>()</span>
<br>
</p>
<div class='docstring'>
<p>Очистка всего списка. Если список пуст уже, то вернётся <code>null</code></p>
</div>
<div class='tags'>
<h3>Throws:</h3>
<ul class='throw'>
<li>
<span class='type'></span>
(
<tt>TypeError</tt>
)
—
<span class='desc'>если переданы аргументы </span>
</li>
</ul>
<h3>Returns:</h3>
<ul class='return'>
<li>
<span class='type'></span>
(
<tt>List|null</tt>
)
—
<span class='desc'><code>this</code> или признак пустого списка </span>
</li>
</ul>
</div>
</div>
<div class='method_details'>
<p class='signature' id='destructor-dynamic'>
#
(null)
<b>destructor</b><span>()</span>
<br>
</p>
<div class='docstring'>
<p>Удаляет все ссылки и очищает список, разрушая все узлы</p>
</div>
<div class='tags'>
<h3>Returns:</h3>
<ul class='return'>
<li>
<span class='type'></span>
<tt>null</tt>
</li>
</ul>
</div>
</div>
</div>
</div>
<div id='footer'>
By
<a href='https://github.com/coffeedoc/codo' title='CoffeeScript API documentation generator'>
Codo
</a>
2.1.0
✲
Press H to see the keyboard shortcuts
✲
<a href='http://twitter.com/netzpirat' target='_parent'>@netzpirat</a>
✲
<a href='http://twitter.com/_inossidabile' target='_parent'>@_inossidabile</a>
</div>
<iframe id='search_frame'></iframe>
<div id='fuzzySearch'>
<input type='text'>
<ol></ol>
</div>
<div id='help'>
<p>
Quickly fuzzy find classes, mixins, methods, file:
</p>
<ul>
<li>
<span>T</span>
Open fuzzy finder dialog
</li>
</ul>
<p>
Control the navigation frame:
</p>
<ul>
<li>
<span>L</span>
Toggle list view
</li>
<li>
<span>C</span>
Show class list
</li>
<li>
<span>I</span>
Show mixin list
</li>
<li>
<span>F</span>
Show file list
</li>
<li>
<span>M</span>
Show method list
</li>
<li>
<span>E</span>
Show extras list
</li>
</ul>
<p>
You can focus and blur the search input:
</p>
<ul>
<li>
<span>S</span>
Focus search input
</li>
<li>
<span>Esc</span>
Blur search input
</li>
</ul>
</div>
</body>
</html>