UNPKG

cstd

Version:

CoffeeScript Standart Library

955 lines (953 loc) 22.3 kB
<!DOCTYPE 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> &raquo; <a href='../alphabetical_index.html' title='Index'> Index </a> &raquo; <span class='title'>CircularList</span> </div> </div> <div id='content'> <h1> Class: CircularList </h1> <table class='box'> <tr> <td>Defined in:</td> <td>lib&#47;circular_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>Описывает циклический список, в котором нет начала или конца, есть только текущий указатель.</p> </div> <div class='tags'> </div> <h2>Property Summary</h2> <dl class='properties'> <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'> . (CircularList) <b>fromArray</b><span>(array)</span> </a> </span> <span class='desc'> Создать список из массива <code>array</code> с указателем на первый элемент массива </span> </li> </ul> <h2>Instance Method Summary</h2> <ul class='summary'> <li> <span class='signature'> <a href='#append-dynamic'> # (CircularList) <b>append</b><span>(some)</span> </a> </span> <span class='desc'> Присоединяет элемент следом за указателем, т.е. </span> </li> <li> <span class='signature'> <a href='#prepend-dynamic'> # (CircularList) <b>prepend</b><span>(some)</span> </a> </span> <span class='desc'> Присоединяет элемент перед текущим, т.е. </span> </li> <li> <span class='signature'> <a href='#add-dynamic'> # (CircularList) <b>add</b><span>(first, list...)</span> </a> </span> <span class='desc'> Присоединяет список аргументов после текущего. </span> </li> <li> <span class='signature'> <a href='#go-dynamic'> # (CircularList) <b>go</b><span>(step)</span> </a> </span> <span class='desc'> Позволяет перейти по списку вперёд или назад на <code>step</code> шагов. </span> </li> <li> <span class='signature'> <a href='#next-dynamic'> # (CircularList) <b>next</b><span>()</span> </a> </span> <span class='desc'> Перейти к следующему узлу в списке </span> </li> <li> <span class='signature'> <a href='#prev-dynamic'> # (CircularList) <b>prev</b><span>()</span> </a> </span> <span class='desc'> Перейти к предыдущему элементу </span> </li> <li> <span class='signature'> <a href='#get-dynamic'> # (CircularList) <b>get</b><span>()</span> </a> </span> <span class='desc'> Получить значение текущего элемента </span> </li> <li> <span class='signature'> <a href='#currentNode-dynamic'> # (CircularList) <b>currentNode</b><span>()</span> </a> </span> <span class='desc'> Получить текущий узел </span> </li> <li> <span class='signature'> <a href='#set-dynamic'> # (CircularList) <b>set</b><span>(some)</span> </a> </span> <span class='desc'> Установить значение текущего элемента </span> </li> <li> <span class='signature'> <a href='#erase-dynamic'> # (CircularList|Node) <b>erase</b><span>(returnNodes = true)</span> </a> </span> <span class='desc'> Очистить список от текущего значения и вернуть его, если <code>returnNodes</code> == true </span> </li> <li> <span class='signature'> <a href='#clear-dynamic'> # (CircularList) <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'> . (CircularList) <b>fromArray</b><span>(array)</span> <br> </p> <div class='docstring'> <p>Создать список из массива <code>array</code> с указателем на первый элемент массива</p> </div> <div class='tags'> <h3>Parameters:</h3> <ul class='param'> <li> <span class='name'>array</span> <span class='type'> ( <tt>Array&lt;*&gt;</tt> ) </span> &mdash; <span class='desc'>массив из которых создаём список </span> </li> </ul> <h3>Throws:</h3> <ul class='throw'> <li> <span class='type'></span> ( <tt>Error</tt> ) &mdash; <span class='desc'>если аргументов не 1 </span> </li> <li> <span class='type'></span> ( <tt>TypeError</tt> ) &mdash; <span class='desc'>если <code>array</code> не массив </span> </li> </ul> <h3>Returns:</h3> <ul class='return'> <li> <span class='type'></span> ( <tt><a href='../class/CircularList.html'>CircularList</a></tt> ) &mdash; <span class='desc'>circularList </span> </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> ) &mdash; <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='append-dynamic'> # (CircularList) <b>append</b><span>(some)</span> <br> </p> <div class='docstring'> <p>Присоединяет элемент следом за указателем, т.е. значение становится доступным при вызове <code>.next().get()</code>.</p> </div> <div class='tags'> <h3>Parameters:</h3> <ul class='param'> <li> <span class='name'>some</span> <span class='type'> ( <tt>*</tt> ) </span> &mdash; <span class='desc'>сущность для присоединения </span> </li> </ul> <h3>Throws:</h3> <ul class='throw'> <li> <span class='type'></span> ( <tt>TypeError</tt> ) &mdash; <span class='desc'>если аргументов более одного, т.к. есть <code>add</code> </span> </li> <li> <span class='type'></span> ( <tt>TypeError</tt> ) &mdash; <span class='desc'>если нет аргументов </span> </li> </ul> <h3>Returns:</h3> <ul class='return'> <li> <span class='type'></span> ( <tt><a href='../class/CircularList.html'>CircularList</a></tt> ) &mdash; <span class='desc'><code>this</code> </span> </li> </ul> </div> </div> <div class='method_details'> <p class='signature' id='prepend-dynamic'> # (CircularList) <b>prepend</b><span>(some)</span> <br> </p> <div class='docstring'> <p>Присоединяет элемент перед текущим, т.е. значение становится достыпным при вызове <code>.prev().get()</code></p> </div> <div class='tags'> <h3>Parameters:</h3> <ul class='param'> <li> <span class='name'>some</span> <span class='type'> ( <tt>*</tt> ) </span> &mdash; <span class='desc'>сущность для присоединения </span> </li> </ul> <h3>Throws:</h3> <ul class='throw'> <li> <span class='type'></span> ( <tt>TypeError</tt> ) &mdash; <span class='desc'>если аргументов более одного </span> </li> <li> <span class='type'></span> ( <tt>TypeError</tt> ) &mdash; <span class='desc'>если нет аргументов </span> </li> </ul> <h3>Returns:</h3> <ul class='return'> <li> <span class='type'></span> ( <tt><a href='../class/CircularList.html'>CircularList</a></tt> ) &mdash; <span class='desc'><code>this</code> </span> </li> </ul> </div> </div> <div class='method_details'> <p class='signature' id='add-dynamic'> # (CircularList) <b>add</b><span>(first, list...)</span> <br> </p> <div class='docstring'> <p>Присоединяет список аргументов после текущего. Замечу, что принимает на вход множество аргументов, а не массив аргументов.</p> </div> <div class='tags'> <h3>Parameters:</h3> <ul class='param'> <li> <span class='name'>arguments...</span> <span class='type'> ( <tt>*</tt> ) </span> &mdash; <span class='desc'>сущности для присоединения </span> </li> </ul> <h3>Throws:</h3> <ul class='throw'> <li> <span class='type'></span> ( <tt>TypeError</tt> ) &mdash; <span class='desc'>если аргументов нет </span> </li> </ul> <h3>Returns:</h3> <ul class='return'> <li> <span class='type'></span> ( <tt><a href='../class/CircularList.html'>CircularList</a></tt> ) &mdash; <span class='desc'><code>this</code> </span> </li> </ul> </div> </div> <div class='method_details'> <p class='signature' id='go-dynamic'> # (CircularList) <b>go</b><span>(step)</span> <br> </p> <div class='docstring'> <p>Позволяет перейти по списку вперёд или назад на <code>step</code> шагов. Чтобы не кружить по списку, количесво шагов будет оптимизированно.</p> </div> <div class='tags'> <h3>Parameters:</h3> <ul class='param'> <li> <span class='name'>step</span> <span class='type'> ( <tt>Number</tt> ) </span> &mdash; <span class='desc'>количество шагов: если &gt; 0, то вперёд, иначе -- назад </span> </li> </ul> <h3>Throws:</h3> <ul class='throw'> <li> <span class='type'></span> ( <tt>Error</tt> ) &mdash; <span class='desc'>если <code>step</code> не передан </span> </li> <li> <span class='type'></span> ( <tt>TypeError</tt> ) &mdash; <span class='desc'>если <code>step</code> не число </span> </li> <li> <span class='type'></span> ( <tt>Error</tt> ) &mdash; <span class='desc'>если аргументов больше 1 </span> </li> </ul> <h3>Returns:</h3> <ul class='return'> <li> <span class='type'></span> ( <tt><a href='../class/CircularList.html'>CircularList</a></tt> ) &mdash; <span class='desc'><code>this</code> </span> </li> </ul> </div> </div> <div class='method_details'> <p class='signature' id='next-dynamic'> # (CircularList) <b>next</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> ) &mdash; <span class='desc'>если переданы аргументы </span> </li> </ul> <h3>Returns:</h3> <ul class='return'> <li> <span class='type'></span> ( <tt><a href='../class/CircularList.html'>CircularList</a></tt> ) &mdash; <span class='desc'><code>this</code> </span> </li> </ul> </div> </div> <div class='method_details'> <p class='signature' id='prev-dynamic'> # (CircularList) <b>prev</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> ) &mdash; <span class='desc'>если переданы аргументы </span> </li> </ul> <h3>Returns:</h3> <ul class='return'> <li> <span class='type'></span> ( <tt><a href='../class/CircularList.html'>CircularList</a></tt> ) &mdash; <span class='desc'><code>this</code> </span> </li> </ul> </div> </div> <div class='method_details'> <p class='signature' id='get-dynamic'> # (CircularList) <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> ) &mdash; <span class='desc'>если переданы аргументы </span> </li> </ul> <h3>Returns:</h3> <ul class='return'> <li> <span class='type'></span> ( <tt><a href='../class/CircularList.html'>CircularList</a></tt> ) &mdash; <span class='desc'><code>this</code> </span> </li> </ul> </div> </div> <div class='method_details'> <p class='signature' id='currentNode-dynamic'> # (CircularList) <b>currentNode</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> ) &mdash; <span class='desc'>если переданы аргументы </span> </li> </ul> <h3>Returns:</h3> <ul class='return'> <li> <span class='type'></span> ( <tt><a href='../class/CircularList.html'>CircularList</a></tt> ) &mdash; <span class='desc'><code>this</code> </span> </li> </ul> </div> </div> <div class='method_details'> <p class='signature' id='set-dynamic'> # (CircularList) <b>set</b><span>(some)</span> <br> </p> <div class='docstring'> <p>Установить значение текущего элемента</p> </div> <div class='tags'> <h3>Parameters:</h3> <ul class='param'> <li> <span class='name'>some</span> <span class='type'> ( <tt>*</tt> ) </span> &mdash; <span class='desc'>новое значение </span> </li> </ul> <h3>Throws:</h3> <ul class='throw'> <li> <span class='type'></span> ( <tt>Error</tt> ) &mdash; <span class='desc'>Если агрументов не 1 </span> </li> <li> <span class='type'></span> ( <tt>Error</tt> ) &mdash; <span class='desc'>Если список пуст. </span> </li> </ul> <h3>Returns:</h3> <ul class='return'> <li> <span class='type'></span> ( <tt><a href='../class/CircularList.html'>CircularList</a></tt> ) &mdash; <span class='desc'><code>this</code> </span> </li> </ul> </div> </div> <div class='method_details'> <p class='signature' id='erase-dynamic'> # (CircularList|Node) <b>erase</b><span>(returnNodes = true)</span> <br> </p> <div class='docstring'> <p>Очистить список от текущего значения и вернуть его, если <code>returnNodes</code> == true</p> </div> <div class='tags'> <h3>Parameters:</h3> <ul class='param'> <li> <span class='name'>returnNodes</span> <span class='type'> ( <tt>Boolean</tt> ) </span> &mdash; <span class='desc'>возвращать ли удалённый узел </span> </li> </ul> <h3>Throws:</h3> <ul class='throw'> <li> <span class='type'></span> ( <tt>Error</tt> ) &mdash; <span class='desc'>если аргументов &gt; 1 </span> </li> <li> <span class='type'></span> ( <tt>RangeError</tt> ) &mdash; <span class='desc'>если список пуст </span> </li> <li> <span class='type'></span> ( <tt>TypeError</tt> ) &mdash; <span class='desc'>если returnNodes не булево </span> </li> </ul> <h3>Returns:</h3> <ul class='return'> <li> <span class='type'></span> ( <tt>CircularList|Node</tt> ) &mdash; <span class='desc'><code>this</code>|элемент </span> </li> </ul> </div> </div> <div class='method_details'> <p class='signature' id='clear-dynamic'> # (CircularList) <b>clear</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> ) &mdash; <span class='desc'>если переданы аргументы </span> </li> </ul> <h3>Returns:</h3> <ul class='return'> <li> <span class='type'></span> ( <tt><a href='../class/CircularList.html'>CircularList</a></tt> ) &mdash; <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 &#10034; Press H to see the keyboard shortcuts &#10034; <a href='http://twitter.com/netzpirat' target='_parent'>@netzpirat</a> &#10034; <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>