UNPKG

cstd

Version:

CoffeeScript Standart Library

649 lines (645 loc) 16.5 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'>Container</span> </div> </div> <div id='content'> <h1> Class: Container <span class='note title'>Abstract</span> </h1> <table class='box'> <tr> <td>Defined in:</td> <td>lib&#47;container.coffee</td> </tr> <tr> <td>Inherits:</td> <td> <a href='../class/CSObject.html'>CSObject</a> </td> </tr> </table> <h2>Overview</h2> <div class='docstring'> <div class='abstract note'> <strong> This class is abstract. </strong> </div> <p>Контейнер, сущность для групировки, доступа и обработки других сущностей. @class Container</p> </div> <div class='tags'> </div> <h2>Direct Known Subclasses</h2> <p class='children'> <a href='../class/Deque.html'>Deque</a> <a href='../class/Queue.html'>Queue</a> <a href='../class/Stack.html'>Stack</a> </p> <h2>Class Method Summary</h2> <ul class='summary'> <li> <span class='signature'> <a href='#isContainer-static'> . (Boolean) <b>isContainer</b><span>(object)</span> </a> </span> <span class='desc'> Проверяет является ли <code>object</code> контейнером </span> </li> <li> <span class='signature'> <a href='#fromJSON-static'> . (extend Container|Error|TypeError) <b>fromJSON</b><span>(data, quiet = false)</span> </a> </span> <span class='desc'> Создаёт контейнер на основе JSON-объекта <code>data</code> и не отбрасывает ошибок, если <code>quiet</code> выставлно в <code>yes</code> </span> </li> </ul> <h2>Instance Method Summary</h2> <ul class='summary'> <li> <span class='signature'> <a href='#copy-dynamic'> # (extends Container) <b>copy</b><span>(arrayStrategy)</span> </a> </span> <span class='desc'> Копирует объект с сохранением всех ссылок и значений в узлах </span> </li> <li> <span class='signature'> <a href='#values-dynamic'> # (Array&lt;*&gt;) <b>values</b><span>()</span> </a> </span> <span class='desc'> возвращает значения в узлах контейнера в виде массива начиная с начала контейнера </span> </li> <li> <span class='signature'> <a href='#has-dynamic'> # (Boolean) <b>has</b><span>(some)</span> </a> </span> <span class='desc'> Определяет, находится ли сущность <code>some</code> хотя бы в одном из узлов. </span> </li> <li> <span class='signature'> <a href='#toString-dynamic'> # (String) <b>toString</b><span>()</span> </a> </span> <span class='desc'> Создаёт строчное предтсавления контейнера. </span> </li> <li> <span class='signature'> <a href='#toJSON-dynamic'> # (Object&lt; type:String, data:Array&lt;*&gt; &gt;) <b>toJSON</b><span>()</span> </a> </span> <span class='desc'> <p>Преобразует контейнер в объектное представление, которое можно конвертировать в JSON-строку имя контейнера в <code>type</code> и в <code>data</code> значения в виде массива</p> </span> </li> <li> <span class='signature'> <a href='#destructor-dynamic'> # (null) <b>destructor</b><span>()</span> </a> </span> <span class='desc'> Разрушает контейнер: требует определение в каждом классе своё @abstarct </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='isContainer-static'> . (Boolean) <b>isContainer</b><span>(object)</span> <br> </p> <div class='docstring'> <p>Проверяет является ли <code>object</code> контейнером</p> </div> <div class='tags'> <h3>Parameters:</h3> <ul class='param'> <li> <span class='name'>object</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> </ul> <h3>Returns:</h3> <ul class='return'> <li> <span class='type'></span> ( <tt>Boolean</tt> ) &mdash; <span class='desc'>является или нет </span> </li> </ul> </div> </div> <div class='method_details'> <p class='signature' id='fromJSON-static'> . (extend Container|Error|TypeError) <b>fromJSON</b><span>(data, quiet = false)</span> <br> </p> <div class='docstring'> <p>Создаёт контейнер на основе JSON-объекта <code>data</code> и не отбрасывает ошибок, если <code>quiet</code> выставлно в <code>yes</code></p> </div> <div class='tags'> <h3>Parameters:</h3> <ul class='param'> <li> <span class='name'>data</span> <span class='type'> ( <tt>Object</tt> ) </span> &mdash; <span class='desc'>объект для строительства </span> </li> <li> <span class='name'>quiet</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'>если аргументов не 1 и не 2 </span> </li> <li> <span class='type'></span> ( <tt>TypeError</tt> ) &mdash; <span class='desc'>если <code>data</code> не объект и/или quiet не булево </span> </li> <li> <span class='type'></span> ( <tt>TypeError</tt> ) &mdash; <span class='desc'>если нарушен формат <code>data</code> </span> </li> <li> <span class='type'></span> ( <tt>Error</tt> ) &mdash; <span class='desc'>если метод <code>fromArray</code> не определён в потомке </span> </li> <li> <span class='type'></span> ( <tt>TypeError</tt> ) &mdash; <span class='desc'>если имя потомка и имя в <code>data</code> не совпали </span> </li> </ul> <h3>Returns:</h3> <ul class='return'> <li> <span class='type'></span> ( <tt>extend Container|Error|TypeError</tt> ) &mdash; <span class='desc'>сооружение или ошибку, при включенном <code>quiet</code> и возникновении ошибки </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='copy-dynamic'> # (extends Container) <b>copy</b><span>(arrayStrategy)</span> <br> </p> <div class='docstring'> <p>Копирует объект с сохранением всех ссылок и значений в узлах</p> </div> <div class='tags'> <h3>Parameters:</h3> <ul class='param'> <li> <span class='name'>arrayStrategy</span> <span class='type'> ( <tt>Boolean</tt> ) </span> &mdash; <span class='desc'>использовать прикопировании создание массива и передачу его в функцию <code>fromArray</code> <code>[default = no]</code>. По идее параметр <code>arrayStrategy</code> для внутреннего пользования, но как знать, может кому поможет... </span> </li> </ul> <h3>Throws:</h3> <ul class='throw'> <li> <span class='type'></span> ( <tt>typeError</tt> ) &mdash; <span class='desc'>если аргументов &gt; 1 или если это не булево значение </span> </li> </ul> <h3>Returns:</h3> <ul class='return'> <li> <span class='type'></span> ( <tt>extends Container</tt> ) &mdash; <span class='desc'>унаследованные от контейнера классы в которых вызван метод </span> </li> </ul> </div> </div> <div class='method_details'> <p class='signature' id='values-dynamic'> # (Array&lt;*&gt;) <b>values</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>Array&lt;*&gt;</tt> ) &mdash; <span class='desc'>массив значений узлов </span> </li> </ul> </div> </div> <div class='method_details'> <p class='signature' id='has-dynamic'> # (Boolean) <b>has</b><span>(some)</span> <br> </p> <div class='docstring'> <p>Определяет, находится ли сущность <code>some</code> хотя бы в одном из узлов. Сложность О(n)</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'>если аргументов не 1 </span> </li> </ul> <h3>Returns:</h3> <ul class='return'> <li> <span class='type'></span> ( <tt>Boolean</tt> ) &mdash; <span class='desc'>есть ли значение в хотя бы одном из узлов </span> </li> </ul> </div> </div> <div class='method_details'> <p class='signature' id='toString-dynamic'> # (String) <b>toString</b><span>()</span> <br> </p> <div class='docstring'> <p>Создаёт строчное предтсавления контейнера. Между элементами расставляет -&gt; для односвязанных списков и &lt;-&gt; для двусвязанных.</p> </div> <div class='tags'> <h3>Returns:</h3> <ul class='return'> <li> <span class='type'></span> ( <tt>String</tt> ) &mdash; <span class='desc'>проекция контейнера на строку </span> </li> </ul> </div> </div> <div class='method_details'> <p class='signature' id='toJSON-dynamic'> # (Object&lt; type:String, data:Array&lt;*&gt; &gt;) <b>toJSON</b><span>()</span> <br> </p> <div class='docstring'> <p>Преобразует контейнер в объектное представление, которое можно конвертировать в JSON-строку имя контейнера в <code>type</code> и в <code>data</code> значения в виде массива</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>Object&lt; type:String, data:Array&lt;*&gt; &gt;</tt> </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>Разрушает контейнер: требует определение в каждом классе своё @abstarct</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>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>