/** * Отнаследовано от глобального дерева.
* Ноды этого дерева имеют доступ к атрибутам * * @class GlobalAttributeTree * @extends Trees.GlobalTree * @memberof Trees */ function GlobalAttributeTree() { } /** * @class Node * @extends Trees.GlobalTree.Node * @memberof Trees.GlobalAttributeTree */ function Node() { /** * Возвращает список всех атрибутов, включая динамические
*
Работает через промис. * * @public * @function attributes * @returns {tools.promise.native} * @memberof Trees.GlobalAttributeTree.Node */ this.attributes = function() { }; /** * Возвращает список базовых атрибутов ноды (их нельзя удалить)
*
Работает через промис. * * @public * @function base_attributes * @returns {tools.promise.native} * @memberof Trees.GlobalAttributeTree.Node */ this.base_attributes = function() { }; /** * Возвращает менеджер атрибутов ноды. * * @public * @function am * @returns {tools.promise.native} * @memberof Trees.GlobalAttributeTree.Node */ this.am = function() { }; } /** * Интерфейс позволяющей пользователю работать с атрибутами ноды * * @class Attributes * @memberof Trees.GlobalAttributeTree.Node */ function Attributes() { /** * Возвращает список атрибутов ноды * * @public * @function attributes * @returns {v2.map(v2.string.type, v2.vc.type)} * @memberof Trees.GlobalAttributeTree.Node.Attributes */ this.attributes = function() { }; /** * Возвращает список базовых атрибутов ноды * * @public * @function base_attributes * @returns {v2.vc} * @memberof Trees.GlobalAttributeTree.Node.Attributes */ this.base_attributes = function() { }; /** * Возвращает ссылку на атрибут ноды * * @public * @function get * @param {v2.string} attributeName * @returns {tools.promise.native} * @memberof Trees.GlobalAttributeTree.Node.Attributes */ this.get = function(attributeName) { }; /** * Проверяет наличие любого атрибута у ноды * * @public * @function is_exist_attribute * @param {v2.string} attributeName * @returns {boolean} * @memberof Trees.GlobalAttributeTree.Node.Attributes */ this.is_exist_attribute = function(attributeName) { }; /** * Провеляет наличие базового атрибута у ноды * * @public * @function has_base_attribute * @param {v2.string} attributeName * @returns {boolean} * @memberof Trees.GlobalAttributeTree.Node.Attributes */ this.has_base_attribute = function(attributeName) { }; /** * Добавляет динамические атрибуты в ноду * * @public * @function add * @param {v2.vc} attributes список атрибутов * @returns {v2.model_type} * @memberof Trees.GlobalAttributeTree.Node.Attributes */ this.add = function(attributes) { }; /** * Удаляет динамические атрибуты из ноды * * @public * @function remove * @param {v2.set(v2.string)} attributes * @returns {v2.model_type} * @memberof Trees.GlobalAttributeTree.Node.Attributes */ this.remove = function(attributes) { }; }