/**
* Отнаследовано от глобального дерева.
* Ноды этого дерева имеют доступ к атрибутам
*
* @manager
* @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}
* @memberof Trees.GlobalAttributeTree.Node
*/
this.attributes = function() {
};
/**
* Возвращает список базовых атрибутов ноды (их нельзя удалить)
*
Работает через промис.
*
* @public
* @function base_attributes
* @returns {tools.promise}
* @memberof Trees.GlobalAttributeTree.Node
*/
this.base_attributes = function() {
};
/**
* Возвращает менеджер атрибутов ноды.
*
* @public
* @function am
* @returns {tools.promise}
* @memberof Trees.GlobalAttributeTree.Node
*/
this.am = function() {
};
}
/**
* Интерфейс позволяющей пользователю работать с атрибутами ноды
*
* @manager
* @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}
* @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) {
};
}