diff --git a/csharp/Platform.Data/ILinks.cs b/csharp/Platform.Data/ILinks.cs index 7438b68..8aa09dc 100644 --- a/csharp/Platform.Data/ILinks.cs +++ b/csharp/Platform.Data/ILinks.cs @@ -44,7 +44,10 @@ TConstants Constants /// Counts and returns the total number of links in the storage that meet the specified restriction. /// Подсчитывает и возвращает общее число связей находящихся в хранилище, соответствующих указанному ограничению. /// - /// Restriction on the contents of links.Ограничение на содержимое связей. + /// + /// Restriction on the contents of links. If null is passed, returns 0 (no links match an empty restriction). To count all links, use a restriction array containing only Constants.Any. + /// Ограничение на содержимое связей. Если передан null, возвращается 0 (ни одна связь не соответствует пустому ограничению). Чтобы подсчитать все связи, используйте массив ограничений, содержащий только Constants.Any. + /// /// The total number of links in the storage that meet the specified restriction.Общее число связей находящихся в хранилище, соответствующих указанному ограничению. [MethodImpl(MethodImplOptions.AggressiveInlining)] TLinkAddress Count(IList? restriction); @@ -54,8 +57,8 @@ TConstants Constants /// Выполняет проход по всем связям, соответствующим шаблону, вызывая обработчик (handler) для каждой подходящей связи. /// /// - /// Restriction on the contents of links. Each constraint can have values: Constants.Null - the 0th link denoting a reference to the void, Any - the absence of a constraint, 1..∞ a specific link index. - /// Ограничение на содержимое связей. Каждое ограничение может иметь значения: Constants.Null - 0-я связь, обозначающая ссылку на пустоту, Any - отсутствие ограничения, 1..∞ конкретный индекс связи. + /// Restriction on the contents of links. If null is passed, no links are processed. Each constraint in a non-null restriction can have values: Constants.Null - the 0th link denoting a reference to the void, Constants.Any - matches any link in that position, 1..∞ a specific link index. + /// Ограничение на содержимое связей. Если передан null, ни одна связь не обрабатывается. Каждое ограничение в не-null ограничении может иметь значения: Constants.Null - 0-я связь, обозначающая ссылку на пустоту, Constants.Any - соответствует любой связи в этой позиции, 1..∞ конкретный индекс связи. /// /// A handler for each matching link.Обработчик для каждой подходящей связи. /// Constants.Continue, if the pass through the links was not interrupted, and Constants.Break otherwise.Constants.Continue, в случае если проход по связям не был прерван и Constants.Break в обратном случае. @@ -70,8 +73,8 @@ TConstants Constants /// Creates a link. /// Создаёт связь. /// - /// The content of a new link. This argument is optional, if the null passed as value that means no content of a link is set. - /// Содержимое новой связи. Этот аргумент опционален, если null передан в качестве значения это означает, что никакого содержимого для связи не установлено. + /// The content of a new link. If null is passed, creates a point (self-referencing link). For other link types, provide an array with source and target addresses. + /// Содержимое новой связи. Если передан null, создаётся точка (самосылающаяся связь). Для других типов связей предоставьте массив с адресами источника и цели. /// /// /// A function to handle each executed change. This function can use Constants.Continue to continue proccess each change. Constants.Break can be used to stop receiving of executed changes. @@ -96,10 +99,12 @@ TConstants Constants /// на связь с указанным новым содержимым. /// /// - /// Ограничение на содержимое связей. - /// Предполагается, что будет указан индекс связи (в restriction[Constants.IndexPart]) и далее за ним будет следовать содержимое связи. - /// Каждое ограничение может иметь значения: Constants.Null - 0-я связь, обозначающая ссылку на пустоту, - /// Constants.Itself - требование установить ссылку на себя, 1..∞ конкретный индекс другой связи. + /// Restriction on the contents of links. If null is passed, no links are updated (safer default). + /// Ограничение на содержимое связей. Если передан null, ни одна связь не обновляется (более безопасное поведение по умолчанию). + /// Expected format: restriction[Constants.IndexPart] contains the link address, followed by link content. + /// Предполагается, что будет указан индекс связи (в restriction[Constants.IndexPart]) и далее за ним будет следовать содержимое связи. + /// Each constraint can have values: Constants.Null - the 0th link (void reference), Constants.Itself - self-reference requirement, 1..∞ specific link index. + /// Каждое ограничение может иметь значения: Constants.Null - 0-я связь, обозначающая ссылку на пустоту, Constants.Itself - требование установить ссылку на себя, 1..∞ конкретный индекс другой связи. /// /// /// @@ -124,8 +129,8 @@ TConstants Constants /// Удаляет связи соответствующие указанному ограничению. /// /// - /// Restriction on the content of a link. This argument is optional, if the null passed as value that means no restriction on the content of a link are set. - /// Ограничение на содержимое связи. Этот аргумент опционален, если null передан в качестве значения это означает, что никаких ограничений на содержимое связи не установлено. + /// Restriction on the content of links to delete. IMPORTANT: If null is passed, NO links are deleted (safe default). To delete all links, explicitly pass an array containing only Constants.Any. To delete specific links, provide their addresses or patterns. + /// Ограничение на содержимое связей для удаления. ВАЖНО: Если передан null, НИ ОДНА связь не удаляется (безопасное поведение по умолчанию). Чтобы удалить все связи, явно передайте массив, содержащий только Constants.Any. Чтобы удалить конкретные связи, предоставьте их адреса или шаблоны. /// /// /// A function to handle each executed change. This function can use Constants.Continue to continue proccess each change. Constants.Break can be used to stop receiving of executed changes. diff --git a/csharp/Platform.Data/ILinksExtensions.cs b/csharp/Platform.Data/ILinksExtensions.cs index 4fcf77a..2dc3f03 100644 --- a/csharp/Platform.Data/ILinksExtensions.cs +++ b/csharp/Platform.Data/ILinksExtensions.cs @@ -124,7 +124,7 @@ public static void EnsureLinkExists(this ILinks /// Хранилище связей. /// Обработчик каждой подходящей связи. - /// Ограничения на содержимое связей. Каждое ограничение может иметь значения: Constants.Null - 0-я связь, обозначающая ссылку на пустоту, Any - отсутствие ограничения, 1..∞ конкретный индекс связи. + /// Ограничения на содержимое связей. Каждое ограничение может иметь значения: Constants.Null - 0-я связь, обозначающая ссылку на пустоту, Constants.Any - соответствует любой связи в этой позиции, 1..∞ конкретный индекс связи. /// True, в случае если проход по связям не был прерван и False в обратном случае. [MethodImpl(MethodImplOptions.AggressiveInlining)] public static TLinkAddress Each(this ILinks links, ReadHandler? handler, params TLinkAddress[] restrictions) where TLinkAddress : IUnsignedNumber