diff --git a/csharp/Platform.Data.Doublets/ILinksExtensions.cs b/csharp/Platform.Data.Doublets/ILinksExtensions.cs
index 3599e8efd..2ff8d7b3d 100644
--- a/csharp/Platform.Data.Doublets/ILinksExtensions.cs
+++ b/csharp/Platform.Data.Doublets/ILinksExtensions.cs
@@ -17,30 +17,26 @@
namespace Platform.Data.Doublets
{
///
- ///
- /// Represents the links extensions.
- ///
- ///
+ /// Creates a static class ILinksExtensions.
+ /// Создает статический класс ILinksExtensions.
///
public static class ILinksExtensions
{
///
- ///
- /// Runs the random creations using the specified links.
- ///
- ///
+ /// Creates links with random values in the specified links storage.
+ /// Создаёт связи со случайными значениями в указанном хранилище связей.
///
///
/// The link.
///
///
///
- /// The links.
- ///
+ /// The links storage.
+ /// Хранилище связей.
///
///
- /// The amount of creations.
- ///
+ /// Number of operations to create links.
+ /// Количество операция для создания связей.
///
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static void RunRandomCreations(this ILinks links, ulong amountOfCreations)
@@ -58,22 +54,20 @@ public static void RunRandomCreations(this ILinks links, ulong amo
}
///
- ///
- /// Runs the random searches using the specified links.
- ///
- ///
+ /// Search for links with random values in the specified link store.
+ /// Ищет связи со случайными значениями в указанном хранилище связей.
///
///
/// The link.
///
///
///
- /// The links.
- ///
+ /// The links storage.
+ /// Хранилище связей.
///
///
- /// The amount of searches.
- ///
+ /// Number of operations to find links.
+ /// Количество операция для поиска связей.
///
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static void RunRandomSearches(this ILinks links, ulong amountOfSearches)
@@ -91,22 +85,20 @@ public static void RunRandomSearches(this ILinks links, ulong amou
}
///
- ///
- /// Runs the random deletions using the specified links.
- ///
- ///
+ /// Removing links with random values in the specified link store.
+ /// Удаляет связей со случайными значениями в указанном хранилище связей.
///
///
/// The link.
///
///
///
- /// The links.
- ///
+ /// The links storage.
+ /// Хранилище связей.
///
///
- /// The amount of deletions.
- ///
+ /// Number of operations to delete links.
+ /// Количество операция для удаления связей.
///
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static void RunRandomDeletions(this ILinks links, ulong amountOfDeletions)
@@ -130,22 +122,20 @@ public static void RunRandomDeletions(this ILinks links, ulong amo
}
///
- ///
- /// Deletes the links.
- ///
- ///
+ /// Removing link in the specified link store.
+ /// Удаляет связь в указанном хранилище связей.
///
///
- /// The link.
- ///
+ /// Communication address type.
+ /// Тип адреса связи.
///
///
- /// The links.
- ///
+ /// The links storage.
+ /// Хранилище связей.
///
///
- /// The link to delete.
- ///
+ /// The link to be removed.
+ /// Связь которую нужно удалить.
///
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static void Delete(this ILinks links, TLink linkToDelete)
@@ -155,8 +145,20 @@ public static void Delete(this ILinks links, TLink linkToDelete)
links.EnforceResetValues(linkToDelete);
links.Delete(new LinkAddress(linkToDelete));
}
- }
+ }
+ ///
+ /// Removes all links in the specified store.
+ /// Удаляет все связи в указанном хранилище.
+ ///
+ ///
+ /// Communication address type.
+ /// Тип адреса связи.
+ ///
+ ///
+ /// The links storage.
+ /// Хранилище связей.
+ ///
///
/// TODO: Возможно есть очень простой способ это сделать.
/// (Например просто удалить файл, или изменить его размер таким образом,
@@ -179,18 +181,16 @@ public static void DeleteAll(this ILinks links)
}
///
- ///
- /// Firsts the links.
- ///
- ///
+ /// Looks for the first link in the first store.
+ /// Ищет первую связь в первом хранилище.
///
///
- /// The link.
- ///
+ /// Communication address type.
+ /// Тип адреса связи.
///
///
- /// The links.
- ///
+ /// The links storage.
+ /// Хранилище связей.
///
///
/// В процессе поиска по хранилищу не было найдено связей.
@@ -226,26 +226,24 @@ public static TLink First(this ILinks links)
}
///
- ///
- /// Singles the or default using the specified links.
- ///
- ///
+ /// Finds a link that satisfies the specified constraint, if there is one, otherwise returns the default link address.
+ /// Находит связь, которая удовлетворяет указанном ограничению, если такая существует в единственном экземпляре, в противном случае возвращает адрес связи по умолчанию.
///
///
- /// The link.
- ///
+ /// Communication address type.
+ /// Тип адреса связи.
///
///
- /// The links.
- ///
+ /// The links storage.
+ /// Хранилище связей.
///
///
- /// The query.
- ///
+ /// Limitation.
+ /// Ограничение.
///
///
- /// The result.
- ///
+ /// Return result.
+ /// Возвращает результат.
///
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static IList SingleOrDefault(this ILinks links, IList query)
@@ -276,6 +274,26 @@ TLink linkHandler(IList link)
#region Paths
+ ///
+ /// Checks the existence of a base along the given path.
+ /// Проверяет существование базы по данному пути.
+ ///
+ ///
+ /// Communication address type.
+ /// Тип адреса связи.
+ ///
+ ///
+ /// The links storage.
+ /// Хранилище связей.
+ ///
+ ///
+ /// Links store path.
+ /// Путь к хранилищу связей.
+ ///
+ ///
+ /// Returns true if there is a path to the link or false if there is no path to the link.
+ /// Возвращает значение true в случае существание пути к связе или false в случае отстутсвии пути к связи.
+ ///
///
/// TODO: Как так? Как то что ниже может быть корректно?
/// Скорее всего практически не применимо
@@ -315,6 +333,30 @@ public static bool CheckPathExistance(this ILinks links, params TL
return true;
}
+ ///
+ /// Retrieved by key link by link address.
+ /// Получает с помощью ключевой связи и с помощью адреса связи адресс главной связи.
+ ///
+ ///
+ /// Communication address type.
+ /// Тип адреса связи.
+ ///
+ ///
+ /// The key link.
+ /// Ключевая связь.
+ ///
+ ///
+ /// The links storage.
+ /// Хранилище связи.
+ ///
+ ///
+ /// Main link path.
+ /// Путь к главной связи.
+ ///
+ ///
+ /// Returns the current link.
+ /// Возвращеает текущую связь.
+ ///
///
/// Может потребовать дополнительного стека для PathElement's при использовании SequenceWalker.
///
@@ -331,38 +373,32 @@ public static TLink GetByKeys(this ILinks links, TLink root, param
}
///
- ///
- /// Gets the square matrix sequence element by index using the specified links.
- ///
- ///
+ /// Picks up a matrix of slave link addresses using the master link index.
+ /// Палучает матрицу адресов побойчных связей с помощью индекса главной связи.
///
///
- /// The link.
- ///
+ /// Communication address type.
+ /// Тип адреса связи.
///
///
- /// The links.
- ///
+ /// The links storage.
+ /// Хранилище связей.
///
///
- /// The root.
- ///
+ /// The key link.
+ /// Ключевая связь.
///
///
- /// The size.
- ///
+ /// Link address matrix size.
+ /// Размер матрицы адресов связи.
///
///
- /// The index.
- ///
+ /// The link index.
+ /// Индекс связи.
///
- ///
- /// Sequences with sizes other than powers of two are not supported.
- ///
- ///
///
- /// The current link.
- ///
+ /// Returns the current master link.
+ /// Возвращает текущую главную связь.
///
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static TLink GetSquareMatrixSequenceElementByIndex(this ILinks links, TLink root, ulong size, ulong index)
@@ -388,69 +424,173 @@ public static TLink GetSquareMatrixSequenceElementByIndex(this ILinks
- /// Возвращает индекс указанной связи.
+ /// Gets the index of the specified relationship in the specified storage.
+ /// Получеает индекс указанной связи в указанном хранилище.
///
- /// Хранилище связей.
- /// Связь представленная списком, состоящим из её адреса и содержимого.
- /// Индекс начальной связи для указанной связи.
+ ///
+ /// Communication address type.
+ /// Тип адреса связи.
+ ///
+ ///
+ /// The links storage.
+ /// Хранилище связей.
+ ///
+ ///
+ /// The link.
+ /// Связь.
+ ///
+ ///
+ /// Index of the specified link.
+ /// Индекс указанной связи.
+ ///
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static TLink GetIndex(this ILinks links, IList link) => link[links.Constants.IndexPart];
///
- /// Возвращает индекс начальной (Source) связи для указанной связи.
+ /// Gets the start of a link in the specified link store.
+ /// Получает начало связи в указанном хранилище связей.
///
- /// Хранилище связей.
- /// Индекс связи.
- /// Индекс начальной связи для указанной связи.
+ ///
+ /// Communication address type.
+ /// Тип адреса связи.
+ ///
+ ///
+ /// The links storage.
+ /// Хранилище связей.
+ ///
+ ///
+ /// The link.
+ /// Связь.
+ ///
+ ///
+ /// The beginning of the specified connection.
+ /// Начало указанной связи.
+ ///
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static TLink GetSource(this ILinks links, TLink link) => links.GetLink(link)[links.Constants.SourcePart];
///
- /// Возвращает индекс начальной (Source) связи для указанной связи.
+ /// Gets the start of a link in the specified link store.
+ /// Получает начало связи в указанном хранилище связей.
///
- /// Хранилище связей.
- /// Связь представленная списком, состоящим из её адреса и содержимого.
- /// Индекс начальной связи для указанной связи.
+ ///
+ /// Communication address type.
+ /// Тип адреса связи.
+ ///
+ ///
+ /// The links storage.
+ /// Хранилище связей.
+ ///
+ ///
+ /// The list of the links.
+ /// Список связей.
+ ///
+ ///
+ /// The beginning of the specified connection.
+ /// Начало указанной связи.
+ ///
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static TLink GetSource(this ILinks links, IList link) => link[links.Constants.SourcePart];
///
- /// Возвращает индекс конечной (Target) связи для указанной связи.
+ /// Gets the end of a link in the specified link store.
+ /// Получает конец связи в указанном хранилище связей.
///
- /// Хранилище связей.
- /// Индекс связи.
- /// Индекс конечной связи для указанной связи.
+ ///
+ /// Communication address type.
+ /// Тип адреса связи.
+ ///
+ ///
+ /// The links storage.
+ /// Хранилище связей.
+ ///
+ ///
+ /// The list of the links.
+ /// Список связей.
+ ///
+ ///
+ /// The end of the specified connection.
+ /// Конец указанной связи.
+ ///
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static TLink GetTarget(this ILinks links, TLink link) => links.GetLink(link)[links.Constants.TargetPart];
///
- /// Возвращает индекс конечной (Target) связи для указанной связи.
+ /// Gets the end of a link in the specified link store.
+ /// Получает конец связи в указанном хранилище связей.
///
- /// Хранилище связей.
- /// Связь представленная списком, состоящим из её адреса и содержимого.
- /// Индекс конечной связи для указанной связи.
+ ///
+ /// Communication address type.
+ /// Тип адреса связи.
+ ///
+ ///
+ /// The links storage.
+ /// Хранилище связей.
+ ///
+ ///
+ /// The list of the links.
+ /// Список связей.
+ ///
+ ///
+ /// The end of the specified connection.
+ /// Конец указанной связи.
+ ///
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static TLink GetTarget(this ILinks links, IList link) => link[links.Constants.TargetPart];
///
- /// Выполняет проход по всем связям, соответствующим шаблону, вызывая обработчик (handler) для каждой подходящей связи.
+ /// Loops through all the links that match the pattern, invoking a handler for each matching link.
+ /// Выполняет проход по всем связям, соответствующим шаблону, вызывая обработчик (handler) для каждой подходящей связи.
///
- /// Хранилище связей.
- /// Обработчик каждой подходящей связи.
+ ///
+ /// Communication address type.
+ /// Тип адреса связи.
+ ///
+ ///
+ /// The links storage.
+ /// Хранилище связей.
+ ///
+ ///
+ /// Handler for every matching link.
+ /// Обработчик каждой подходящей связи.
+ ///
/// Ограничения на содержимое связей. Каждое ограничение может иметь значения: Constants.Null - 0-я связь, обозначающая ссылку на пустоту, Any - отсутствие ограничения, 1..∞ конкретный адрес связи.
- /// True, в случае если проход по связям не был прерван и False в обратном случае.
+ ///
+ /// Returns True if the pass through the links was not interrupted and False otherwise.
+ /// Возвращает значение True, в случае если проход по связям не был прерван и значение False в обратном случае.
+ ///
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static bool Each(this ILinks links, Func, TLink> handler, params TLink[] restrictions)
=> EqualityComparer.Default.Equals(links.Each(handler, restrictions), links.Constants.Continue);
///
- /// Выполняет проход по всем связям, соответствующим шаблону, вызывая обработчик (handler) для каждой подходящей связи.
+ /// Handles every relationship with the specified start and end.
+ /// Обрабатывает каждую связь с указанным началом и концом.
///
- /// Хранилище связей.
- /// Значение, определяющее соответствующие шаблону связи. (Constants.Null - 0-я связь, обозначающая ссылку на пустоту в качестве начала, Constants.Any - любое начало, 1..∞ конкретное начало)
- /// Значение, определяющее соответствующие шаблону связи. (Constants.Null - 0-я связь, обозначающая ссылку на пустоту в качестве конца, Constants.Any - любой конец, 1..∞ конкретный конец)
- /// Обработчик каждой подходящей связи.
- /// True, в случае если проход по связям не был прерван и False в обратном случае.
+ ///
+ /// Communication address type.
+ /// Тип адреса связи.
+ ///
+ ///
+ /// The links storage.
+ /// Хранилище связей.
+ ///
+ ///
+ /// The beggining of link.
+ /// Начало связи.
+ ///
+ ///
+ /// The end of link.
+ /// Конец связи.
+ ///
+ ///
+ /// Handler for every matching link.
+ /// Обработчик каждой подходящей связи.
+ ///
+ ///
+ /// Returns the processing value for each relationship with the specified start and end..
+ /// Возвращает значение обработки каждой связи с указанным началом и концом.
+ ///
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static bool Each(this ILinks links, TLink source, TLink target, Func handler)
{
@@ -459,37 +599,55 @@ public static bool Each(this ILinks links, TLink source, TLink tar
}
///
- /// Выполняет проход по всем связям, соответствующим шаблону, вызывая обработчик (handler) для каждой подходящей связи.
+ /// Using the template, it traverses each link and calls the link handler for each uploaded link..
+ /// С помощью шаблона проходит по каждой связи в вызывает обработчик связи для каждой подъодящей связи.
///
- /// Хранилище связей.
- /// Значение, определяющее соответствующие шаблону связи. (Constants.Null - 0-я связь, обозначающая ссылку на пустоту в качестве начала, Constants.Any - любое начало, 1..∞ конкретное начало)
- /// Значение, определяющее соответствующие шаблону связи. (Constants.Null - 0-я связь, обозначающая ссылку на пустоту в качестве конца, Constants.Any - любой конец, 1..∞ конкретный конец)
- /// Обработчик каждой подходящей связи.
- /// True, в случае если проход по связям не был прерван и False в обратном случае.
+ ///
+ /// Communication address type.
+ /// Тип адреса связи.
+ ///
+ ///
+ /// The beggining of the link.
+ /// Начало связи.
+ ///
+ ///
+ /// The end of link.
+ /// Конец связи.
+ ///
+ ///
+ /// Handler for every matching link.
+ /// Обработчик каждой подходящей связи.
+ ///
+ ///
+ /// The links storage.
+ /// Хранилище связей.
+ ///
+ ///
+ /// Returns true if the pass through the links was not interrupted and False otherwise.
+ /// Вовзращает значение true, в случае если проход по связям не был прерван и False в обратном случае.
+ ///
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static bool Each(this ILinks links, TLink source, TLink target, Func, TLink> handler) => links.Each(handler, links.Constants.Any, source, target);
///
- ///
- /// Alls the links.
- ///
- ///
+ /// Using constraints, checks the addresses of links in the link store.
+ /// С помощью ограничений проверяет адреса связей в хранилище связей.
///
///
- /// The link.
- ///
+ /// Communication address type.
+ /// Тип адреса связи.
///
///
- /// The links.
- ///
+ /// The links Storage.
+ /// Хранилище связей.
///
///
- /// The restrictions.
- ///
+ /// Restrictions on communication addresses.
+ /// Ограничения по адресам связи.
///
///
- /// A list of i list t link
- ///
+ /// Returns the value of a set of links in the case of a nonzero set, and an empty set otherwise.
+ /// Возвращает значение множества связей в случае ненулевого множества, и пустое множество в обратном случае.
///
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static IList> All(this ILinks links, params TLink[] restrictions)
@@ -509,26 +667,24 @@ public static IList> All(this ILinks links, params TL
}
///
- ///
- /// Alls the indices using the specified links.
- ///
- ///
+ /// Checks link addresses by indexes in link store.
+ /// Проверяет адреса связей по индексам в хранилище связей.
///
///
- /// The link.
- ///
+ /// Communication address type.
+ /// Тип адреса связи.
///
///
- /// The links.
- ///
+ /// The links storage.
+ /// Хранилище связей.
///
///
- /// The restrictions.
- ///
+ /// Restrictions on communication addresses.
+ /// Ограничения по адресам связи.
///
///
- /// A list of t link
- ///
+ /// Returns the value of a set of links in the case of a nonzero set, and an empty set otherwise.
+ /// Возвращает значение множества связей в случае ненулевого множества, и пустое множество в обратном случае.
///
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static IList AllIndices(this ILinks links, params TLink[] restrictions)
@@ -548,40 +704,50 @@ public static IList AllIndices(this ILinks links, params TL
}
///
- /// Возвращает значение, определяющее существует ли связь с указанными началом и концом в хранилище связей.
+ /// Checks if a link exists with the specified start and end in the link store.
+ /// Проверяет существует ли связь с указанным началом и концом в хранилище связей.
///
- /// Хранилище связей.
- /// Начало связи.
- /// Конец связи.
- /// Значение, определяющее существует ли связь.
+ ///
+ /// The links storage.
+ /// Хранилище связей.
+ ///
+ ///
+ /// Communication address type.
+ /// Тип адреса связи.
+ ///
+ ///
+ /// The beggining of link.
+ /// Начало связи.
+ ///
+ ///
+ /// The end of link.
+ /// Конец связи.
+ ///
+ ///
+ /// Returns a value that determines whether a link exists or not.
+ /// Возвращает значение, определяющее существует связь или нет.
+ ///
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static bool Exists(this ILinks links, TLink source, TLink target) => Comparer.Default.Compare(links.Count(links.Constants.Any, source, target), default) > 0;
#region Ensure
// TODO: May be move to EnsureExtensions or make it both there and here
-
///
- ///
- /// Ensures the link exists using the specified links.
- ///
- ///
+ /// Checks the connection for its existence.
+ /// Проверяет связь на ее существование.
///
///
- /// The link.
- ///
+ /// Communication address type.
+ /// Тип адреса связи.
///
///
- /// The links.
- ///
- ///
+ /// The links storage.
+ /// Хранилище связей.
///
- /// The restrictions.
- ///
+ /// Restrictions on communication addresses.
+ /// Ограничения по адресам связи.
+ ///
///
- ///
- /// sequence[{i}]
- ///
- ///
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static void EnsureLinkExists(this ILinks links, IList restrictions)
{
@@ -595,26 +761,24 @@ public static void EnsureLinkExists(this ILinks links, IList
- ///
- /// Ensures the inner reference exists using the specified links.
- ///
- ///
+ /// Checks if a link exists for the specified link argument.
+ /// Проверяет связь на существование по указанному аргументу связи.
///
///
- /// The link.
- ///
+ /// Communication address type.
+ /// Тип адреса связи.
///
///
- /// The links.
- ///
+ /// The links storage.
+ /// Хранилище связей.
///
///
- /// The reference.
- ///
+ /// Restrictions on communication addresses.
+ /// Ограничения по адресам связи.
///
///
- /// The argument name.
- ///
+ /// Argument name.
+ /// Значение аргумента.
///
///
///
@@ -630,26 +794,24 @@ public static void EnsureInnerReferenceExists(this ILinks links, T
}
///
- ///
- /// Ensures the inner reference exists using the specified links.
- ///
- ///
+ /// Checks for the existence of a connection in the specified range of contacts.
+ /// Проверяет на существованние связь в казанном диапазоне адресов связей.
///
///
- /// The link.
- ///
+ /// Communication address type.
+ /// Тип адреса связи.
///
///
- /// The links.
- ///
+ /// The links storage.
+ /// Хранилище свящей.
///
///
- /// The restrictions.
- ///
+ /// Restrictions on communication addresses.
+ /// Ограничения по адресам связи.
///
///
- /// The argument name.
- ///
+ /// Argument name.
+ /// Значение аргумента.
///
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static void EnsureInnerReferenceExists(this ILinks links, IList restrictions, string argumentName)
@@ -661,18 +823,16 @@ public static void EnsureInnerReferenceExists(this ILinks links, I
}
///
- ///
- /// Ensures the link is any or exists using the specified links.
- ///
- ///
+ /// Checks for connectivity by address link type.
+ /// Проверяет на существование связи по типам адресов связей.
///
///
- /// The link.
- ///
+ /// Communication address type.
+ /// Тип адреса связи.
///
///
- /// The links.
- ///
+ /// The links storage.
+ /// Хранилище связей.
///
///
/// The restrictions.
@@ -697,26 +857,24 @@ public static void EnsureLinkIsAnyOrExists(this ILinks links, ILis
}
///
- ///
- /// Ensures the link is any or exists using the specified links.
- ///
- ///
+ /// Checks the existence of a link by the types of link addresses and the value of the link arguments.
+ /// Проверяет на существование связи по типам адресов связей и значением аргументов связей.
///
///
- /// The link.
- ///
+ /// Communication address type.
+ /// Тип адреса связи.
///
///
- /// The links.
- ///
+ /// The links storage.
+ /// Хранилище связей.
///
///
/// The link.
- ///
+ /// Связь.
///
///
- /// The argument name.
- ///
+ /// Argument name.
+ /// Значение аргумента.
///
///
///
@@ -733,26 +891,24 @@ public static void EnsureLinkIsAnyOrExists(this ILinks links, TLin
}
///
- ///
- /// Ensures the link is itself or exists using the specified links.
- ///
- ///
+ /// Checks for links in the link store or outside the store by link address type.
+ /// Проверяет существование связей в хранилище связей или вне хранилища по типам адрессов связей.
///
///
- /// The link.
- ///
+ /// Communication address type.
+ /// Тип адреса связи.
///
///
- /// The links.
- ///
+ /// The links storage.
+ /// Хранилище связей.
///
///
/// The link.
- ///
+ /// Связь.
///
///
- /// The argument name.
- ///
+ /// Argument name.
+ /// Значение аргумента.
///
///
///
@@ -768,7 +924,30 @@ public static void EnsureLinkIsItselfOrExists(this ILinks links, T
}
}
- /// Хранилище связей.
+ ///
+ /// Checks the link for its absence in the link repository.
+ /// Проверяет связь на ее отстутсвие в хранилище связей.
+ ///
+ ///
+ /// Communication address type.
+ /// Тип адреса связи.
+ ///
+ ///
+ /// The link.
+ /// Связь.
+ ///
+ ///
+ /// The beggining of link.
+ /// Начало связи.
+ ///
+ ///
+ /// The end of link.
+ /// Конец связи.
+ ///
+ ///
+ /// The links storage.
+ /// Хранилище связей.
+ ///
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static void EnsureDoesNotExists(this ILinks links, TLink source, TLink target)
{
@@ -778,7 +957,22 @@ public static void EnsureDoesNotExists(this ILinks links, TLink so
}
}
- /// Хранилище связей.
+ ///
+ /// Checks the link store for unused links.
+ /// Проверяет хранилище связей на неиспользуемые связи.
+ ///
+ ///
+ /// Communication address type.
+ /// Тип адреса связи.
+ ///
+ ///
+ /// The links storage.
+ /// Хранилище связей.
+ ///
+ ///
+ /// The link.
+ /// Связь.
+ ///
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static void EnsureNoUsages(this ILinks links, TLink link)
{
@@ -788,15 +982,64 @@ public static void EnsureNoUsages(this ILinks links, TLink link)
}
}
- /// Хранилище связей.
+ ///
+ /// Checks the link for its presence in the link storage.
+ /// Проверяет связь на ее наличие в хранилище связей.
+ ///
+ ///
+ /// Communication address type.
+ /// Тип адреса связи.
+ ///
+ ///
+ /// The links storage.
+ /// Хранилище связей.
+ ///
+ ///
+ /// The links addresses.
+ /// Адреса связей.
+ ///
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static void EnsureCreated(this ILinks links, params TLink[] addresses) => links.EnsureCreated(links.Create, addresses);
- /// Хранилище связей.
+ ///
+ /// Checks links for addresses.
+ /// Проверяет связи на наличие адрессов.
+ ///
+ ///
+ /// Communication address type.
+ /// Тип адреса связи.
+ ///
+ ///
+ /// The links storage.
+ /// Хранилище связей.
+ ///
+ ///
+ /// The links addresses.
+ /// Адреса связей.
+ ///
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static void EnsurePointsCreated(this ILinks links, params TLink[] addresses) => links.EnsureCreated(links.CreatePoint, addresses);
- /// Хранилище связей.
+ ///
+ /// Checks if a link has been created with the specified address.
+ /// Проверяет создана ли связь с указанным адрессом.
+ ///
+ ///
+ /// Communication address type.
+ /// Тип адреса связи.
+ ///
+ ///
+ /// The links Storage.
+ /// Хранилище связей.
+ ///
+ ///
+ /// Parameter indicating whether the link is created or not.
+ /// Параметр, указывающий создана связь или нет.
+ ///
+ ///
+ /// The links addresses.
+ /// Адреса связей.
+ ///
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static void EnsureCreated(this ILinks links, Func creator, params TLink[] addresses)
{
@@ -826,7 +1069,26 @@ public static void EnsureCreated(this ILinks links, Func cr
#endregion
- /// Хранилище связей.
+ ///
+ /// Subtracts the number of times a link has been used in the link store.
+ /// Подстчитывает количество использований связи в хранилище связей.
+ ///
+ ///
+ /// Communication address type.
+ /// Тип адреса связи.
+ ///
+ ///
+ /// The links storage.
+ /// Хранилище связей.
+ ///
+ ///
+ /// The link.
+ /// Связь.
+ ///
+ ///
+ /// Returns the number of times the link has been used with the specified start and end.
+ /// Возвращает количество использований связи с указанным началом и концом.
+ ///
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static TLink CountUsages(this ILinks links, TLink link)
{
@@ -846,11 +1108,53 @@ public static TLink CountUsages(this ILinks links, TLink link)
return Arithmetic.Add(usagesAsSource, usagesAsTarget);
}
- /// Хранилище связей.
+ ///
+ /// Checks a link for its use in the link store.
+ /// Проверяет связь на ее использование в хранилище связей.
+ ///
+ ///
+ /// Communication address type.
+ /// Тип адреса связи.
+ ///
+ ///
+ /// The links storage.
+ /// Хранилище связей.
+ ///
+ ///
+ /// The link.
+ /// Связь.
+ ///
+ ///
+ /// Returns the communication address.
+ /// Возвращает адресс связи.
+ ///
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static bool HasUsages(this ILinks links, TLink link) => Comparer.Default.Compare(links.CountUsages(link), default) > 0;
- /// Хранилище связей.
+ ///
+ /// Checks links in the link store for a specified beginning and end of a link.
+ /// Проверяет связи в хранилище связей на указанное начало и конец связи.
+ ///
+ ///
+ /// Communication address type.
+ /// Тип адреса связи.
+ ///
+ ///
+ /// The links storage.
+ /// Хранилище связей.
+ ///
+ ///
+ /// The end of link.
+ /// Конец связи.
+ ///
+ ///
+ /// The beggining of link.
+ /// Начало связи.
+ ///
+ ///
+ /// Returns the addresses of equivalent links.
+ /// Возвращает адреса эквивалентных связей.
+ ///
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static bool Equals(this ILinks links, TLink link, TLink source, TLink target)
{
@@ -861,12 +1165,29 @@ public static bool Equals(this ILinks links, TLink link, TLink sou
}
///
- /// Выполняет поиск связи с указанными Source (началом) и Target (концом).
+ ///
+ ///
///
- /// Хранилище связей.
- /// Индекс связи, которая является началом для искомой связи.
- /// Индекс связи, которая является концом для искомой связи.
- /// Индекс искомой связи с указанными Source (началом) и Target (концом).
+ ///
+ /// Communication address type.
+ /// Тип адреса связи.
+ ///
+ ///
+ /// The links storage.
+ /// Хранилище связей.
+ ///
+ ///
+ /// The beggining of link.
+ /// Начало связи.
+ ///
+ ///
+ /// The end of link.
+ /// Конец связи.
+ ///
+ ///
+ /// Returns the index of the link to find at the specified start or end.
+ /// Возвращает индекс искомой связи с указанным началом или концом.
+ ///
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static TLink SearchOrDefault(this ILinks links, TLink source, TLink target)
{
@@ -876,11 +1197,41 @@ public static TLink SearchOrDefault(this ILinks links, TLink sourc
return setter.Result;
}
- /// Хранилище связей.
+ ///
+ /// Creates a new link and link address in the link store.
+ /// Создает новую связь и адресс связи в хранилище связей.
+ ///
+ ///
+ /// Communication address type.
+ /// Тип адреса связи.
+ ///
+ ///
+ /// The links storage.
+ /// Хранилище связей.
+ ///
+ ///
+ /// Returns an empty link value.
+ /// Возврпащеает пустое значение связи.
+ ///
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static TLink Create(this ILinks links) => links.Create(null);
- /// Хранилище связей.
+ ///
+ /// Creates the value of the link address.
+ /// Создает значение адреса связи.
+ ///
+ ///
+ /// Communication address type.
+ /// Тип адреса связи.
+ ///
+ ///
+ /// The links storage.
+ /// Хранилище связей.
+ ///
+ ///
+ /// Returns an update of the link address.
+ /// Возвращает обновление адресса связи.
+ ///
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static TLink CreatePoint(this ILinks links)
{
@@ -888,29 +1239,80 @@ public static TLink CreatePoint(this ILinks links)
return links.Update(link, link, link);
}
- /// Хранилище связей.
+ ///
+ /// Creates and updates link address types with specified start and end.
+ /// Создает и обновляет типы адреса связи с указанным началом и концом.
+ ///
+ ///
+ /// Communication address type.
+ /// Тип адреса связи.
+ ///
+ ///
+ /// The links storage.
+ /// Хранилище связей.
+ ///
+ ///
+ /// The end of link.
+ /// Конец связи.
+ ///
+ ///
+ /// Returns the end and start of the link.
+ /// Возвращает значения конца и начала связи.
+ ///
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static TLink CreateAndUpdate(this ILinks links, TLink source, TLink target) => links.Update(links.Create(), source, target);
///
- /// Обновляет связь с указанными началом (Source) и концом (Target)
- /// на связь с указанными началом (NewSource) и концом (NewTarget).
+ /// Updates a link with the specified start and end to a link with the specified start and end.
+ /// Обновляет связь с указанным началом и концом на связь с указанным началом и концом.
///
- /// Хранилище связей.
- /// Индекс обновляемой связи.
- /// Индекс связи, которая является началом связи, на которую выполняется обновление.
- /// Индекс связи, которая является концом связи, на которую выполняется обновление.
- /// Индекс обновлённой связи.
+ ///
+ /// Communication address type.
+ /// Тип адреса связи.
+ ///
+ ///
+ /// The links storage.
+ /// Хранилище связи.
+ ///
+ ///
+ /// The link.
+ /// Связь.
+ ///
+ ///
+ /// The new beggining of link.
+ /// Новое начало связи.
+ ///
+ ///
+ /// The new end of link.
+ /// Новый конец связи.
+ ///
+ ///
+ /// Returns the index of the updated link.
+ /// Возвращает индекс обновленной связи.
+ ///
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static TLink Update(this ILinks links, TLink link, TLink newSource, TLink newTarget) => links.Update(new LinkAddress(link), new Link(link, newSource, newTarget));
///
- /// Обновляет связь с указанными началом (Source) и концом (Target)
- /// на связь с указанными началом (NewSource) и концом (NewTarget).
+ /// In two or more equivalent links, combine or delete incoming and outgoing links to one main link.
+ /// В двух или более эквивалентных свзять объединяет или удаляет входящие и выходящие связи к одной главной связи.
///
- /// Хранилище связей.
- /// Ограничения на содержимое связей. Каждое ограничение может иметь значения: Constants.Null - 0-я связь, обозначающая ссылку на пустоту, Itself - требование установить ссылку на себя, 1..∞ конкретный адрес другой связи.
- /// Индекс обновлённой связи.
+ ///
+ /// The links type address.
+ /// Тип адреса связи.
+ ///
+ ///
+ /// The links storage.
+ /// Хранилище связей.
+ ///
+ ///
+ /// Ограничения на содержимое связей.
+ /// Restrictions on the content of links.
+ ///
+ ///
+ /// Depending on the condition, it returns the link update, the index, the link number that was deleted.
+ /// В зависимости от условия возвращает обновления связи, индекс, номер свзи которую удалил.
+ ///
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static TLink Update(this ILinks links, params TLink[] restrictions)
{
@@ -929,34 +1331,32 @@ public static TLink Update(this ILinks links, params TLink[] restr
}
///
- ///
- /// Resolves the constant as self reference using the specified links.
- ///
- ///
+ /// Allows the use of constant values as independent communication addresses.
+ /// Разрешает использование константных значений как самостоятельные адреса связи.
///
///
- /// The link.
- ///
+ /// Communication address type.
+ /// Тип адреса связи.
///
///
- /// The links.
- ///
+ /// The links storage.
+ /// Хранилище связей.
///
///
- /// The constant.
- ///
+ /// Constant values.
+ /// Константные значение.
///
///
- /// The restrictions.
- ///
+ /// Constraints on constant values.
+ /// Ограничения константных значений.
///
///
- /// The substitution.
- ///
+ /// Changed communication addresses.
+ /// Измененные адреса связи.
///
///
- /// A list of t link
- ///
+ /// Returns the link and the type of its address.
+ /// Возвращает связь и тип ее адреса.
///
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static IList ResolveConstantAsSelfReference(this ILinks links, TLink constant, IList restrictions, IList substitution)
@@ -977,12 +1377,29 @@ public static IList ResolveConstantAsSelfReference(this ILinks
- /// Создаёт связь (если она не существовала), либо возвращает индекс существующей связи с указанными Source (началом) и Target (концом).
+ /// Creates a new link, a non-existing link.
+ /// Создает новую связь не существующую связь.
///
- /// Хранилище связей.
- /// Индекс связи, которая является началом на создаваемой связи.
- /// Индекс связи, которая является концом для создаваемой связи.
- /// Индекс связи, с указанным Source (началом) и Target (концом)
+ ///
+ /// Communication address type.
+ /// Тип адреса связи.
+ ///
+ ///
+ /// The links storage.
+ /// Хранилище связей.
+ ///
+ ///
+ /// The beggining of link.
+ /// Начало связи.
+ ///
+ ///
+ /// The end of link.
+ /// Конец связи.
+ ///
+ ///
+ /// Returns the index of an existing relationship with the specified start and end of the relationship.
+ /// Вовзращает индекс существующей связи с указанным началом и концом связи.
+ ///
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static TLink GetOrCreate(this ILinks links, TLink source, TLink target)
{
@@ -995,15 +1412,37 @@ public static TLink GetOrCreate(this ILinks links, TLink source, T
}
///
- /// Обновляет связь с указанными началом (Source) и концом (Target)
- /// на связь с указанными началом (NewSource) и концом (NewTarget).
+ /// Updates a link with the specified start and end to a link with the specified new start and new end.
+ /// Обновляет связь с указанным началом и концом на связь с указанным новым началамо и новым концом.
///
- /// Хранилище связей.
- /// Индекс связи, которая является началом обновляемой связи.
- /// Индекс связи, которая является концом обновляемой связи.
- /// Индекс связи, которая является началом связи, на которую выполняется обновление.
- /// Индекс связи, которая является концом связи, на которую выполняется обновление.
- /// Индекс обновлённой связи.
+ ///
+ /// Communication address type.
+ /// Тип адреса связи.
+ ///
+ ///
+ /// The links storage.
+ /// Хранилище связей.
+ ///
+ ///
+ /// The beggining of link.
+ /// Начало связи.
+ ///
+ ///
+ /// The end of link.
+ /// Конец связи.
+ ///
+ ///
+ /// The new beggining of link.
+ /// Новое начало связи.
+ ///
+ ///
+ /// The new end of link.
+ /// Новый конец связи.
+ ///
+ ///
+ /// Returns the index of a specific relationship.
+ /// Возвращает индекс определенной связи.
+ ///
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static TLink UpdateOrCreateOrGet(this ILinks links, TLink source, TLink target, TLink newSource, TLink newTarget)
{
@@ -1020,10 +1459,30 @@ public static TLink UpdateOrCreateOrGet(this ILinks links, TLink s
return links.Update(link, newSource, newTarget);
}
- /// Удаляет связь с указанными началом (Source) и концом (Target).
- /// Хранилище связей.
- /// Индекс связи, которая является началом удаляемой связи.
- /// Индекс связи, которая является концом удаляемой связи.
+ ///
+ /// Removes the link to the specified start and end.
+ /// Удаляет связь с указанным началом и концом.
+ ///
+ ///
+ /// Communication address type.
+ /// Тип адреса связи.
+ ///
+ ///
+ /// The links storage.
+ /// Хранилище связей.
+ ///
+ ///
+ /// The beggining of communication address..
+ /// Начало адреса связи.
+ ///
+ ///
+ /// The ennd of communication address..
+ /// Конец адреса связи.
+ ///
+ ///
+ /// Returns the default link value.
+ /// Возвращает стандарнтоне значение связи.
+ ///
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static TLink DeleteIfExists(this ILinks links, TLink source, TLink target)
{
@@ -1035,10 +1494,22 @@ public static TLink DeleteIfExists(this ILinks links, TLink source
}
return default;
}
-
- /// Удаляет несколько связей.
- /// Хранилище связей.
- /// Список адресов связей к удалению.
+ ///
+ /// Removing links.
+ /// Удаляет связи.
+ ///
+ ///
+ /// Communication address type.
+ /// Тип адреса связи.
+ ///
+ ///
+ /// The links storage.
+ /// Хранилище связей.
+ ///
+ ///
+ /// List of deleted links.
+ /// Список удаленных связей.
+ ///
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static void DeleteMany(this ILinks links, IList deletedLinks)
{
@@ -1048,34 +1519,51 @@ public static void DeleteMany(this ILinks links, IList dele
}
}
- /// Before execution of this method ensure that deleted link is detached (all values - source and target are reset to null) or it might enter into infinite recursion.
+ ///
+ /// Removes used links on request.
+ /// Удаляет использованные связи по запросу.
+ ///
+ ///
+ /// Communication address type.
+ /// Тип адреса связи.
+ ///
+ ///
+ /// The links storage.
+ /// Хранилище связей.
+ ///
+ ///
+ /// The link index.
+ /// Индекс связи.
+ ///
+ /// Before execution of this method ensure that deleted link is detached
+ /// (all values - source and target are reset to null)
+ /// or it might enter into infinite recursion.
+ ///
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static void DeleteAllUsages(this ILinks links, TLink linkIndex)
{
- var any = links.Constants.Any;
- var usagesAsSourceQuery = new Link(any, linkIndex, any);
+ var anyConstant = links.Constants.Any;
+ var usagesAsSourceQuery = new Link(anyConstant, linkIndex, anyConstant);
links.DeleteByQuery(usagesAsSourceQuery);
- var usagesAsTargetQuery = new Link(any, any, linkIndex);
+ var usagesAsTargetQuery = new Link(anyConstant, linkIndex, anyConstant);
links.DeleteByQuery(usagesAsTargetQuery);
}
///
- ///
- /// Deletes the by query using the specified links.
- ///
- ///
+ /// Removes constrained links.
+ /// Удаляет связи по ограничениям.
///
///
- /// The link.
- ///
+ /// Communication address type.
+ /// Тип адреса связи.
///
///
- /// The links.
- ///
+ /// The links storage.
+ /// Хранилище связей.
///
///
- /// The query.
- ///
+ /// The limitation.
+ /// Ограничение.
///
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static void DeleteByQuery(this ILinks links, Link query)
@@ -1095,26 +1583,24 @@ public static void DeleteByQuery(this ILinks links, Link qu
// TODO: Move to Platform.Data
///
- ///
- /// Determines whether are values reset.
- ///
- ///
+ /// Checks if the link values are cleared.
+ /// Проверяет сброшены ли значения связи.
///
///
- /// The link.
- ///
+ /// Communication address type.
+ /// Тип адреса связи.
///
///
- /// The links.
- ///
+ /// The links storage.
+ /// Хранилище связей.
///
///
- /// The link index.
- ///
+ /// Link Index.
+ /// Индекс связи.
///
///
- /// The bool
- ///
+ /// Returns if the link values are cleared, and if they are not cleared.
+ /// Возвращает значение если сброшены значения связи, и если не сброшены.
///
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static bool AreValuesReset(this ILinks links, TLink linkIndex)
@@ -1134,22 +1620,20 @@ public static bool AreValuesReset(this ILinks links, TLink linkInd
// TODO: Create a universal version of this method in Platform.Data (with using of for loop)
///
- ///
- /// Resets the values using the specified links.
- ///
- ///
+ /// Resets communication values without testing.
+ /// Сбрасывает значения связи без проведения проверок.
///
///
- /// The link.
- ///
+ /// Communication address type.
+ /// Тип адреса связи.
///
///
- /// The links.
- ///
+ /// The links Storage.
+ /// Хранилище связей.
///
///
- /// The link index.
- ///
+ /// Link Index.
+ /// Индекс связи.
///
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static void ResetValues(this ILinks links, TLink linkIndex)
@@ -1161,22 +1645,20 @@ public static void ResetValues(this ILinks links, TLink linkIndex)
// TODO: Create a universal version of this method in Platform.Data (with using of for loop)
///
- ///
- /// Enforces the reset values using the specified links.
- ///
- ///
+ /// Resets link values if they have not been cleared earlier.
+ /// Сбрасывает значиения связи, если они не были сброшены ранее.
///
///
- /// The link.
- ///
+ /// Communication address type.
+ /// Тип адреса связи.
///
///
- /// The links.
- ///
+ /// The links Storage.
+ /// Хранилище связей.
///
///
- /// The link index.
- ///
+ /// Link Index.
+ /// Индекс связи.
///
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static void EnforceResetValues(this ILinks links, TLink linkIndex)
@@ -1188,8 +1670,29 @@ public static void EnforceResetValues(this ILinks links, TLink lin
}
///
- /// Merging two usages graphs, all children of old link moved to be children of new link or deleted.
+ /// Explores two equivalent relationships. Links to the old link either become links to the new link or are deleted.
+ /// Исследует две эквивалентные связи. Ссылки на старую связь либо становяттся сслыками на новую связь либо удаляются.
///
+ ///
+ /// Communication address type.
+ /// Тип адреса связи.
+ ///
+ ///
+ /// The links storage.
+ /// Хранилище связей.
+ ///
+ ///
+ /// The previous link index.
+ /// Предыдущий индекс связи.
+ ///
+ ///
+ /// The new link index.
+ /// Новый индекс связи.
+ ///
+ ///
+ /// Returns the new link index.
+ /// Возвращает новый индекс связи.
+ ///
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static TLink MergeUsages(this ILinks links, TLink oldLinkIndex, TLink newLinkIndex)
{
@@ -1243,8 +1746,29 @@ public static TLink MergeUsages(this ILinks links, TLink oldLinkIn
}
///
- /// Replace one link with another (replaced link is deleted, children are updated or deleted).
+ /// Replaces one equivalent link with another,by deleting the first one, the links are either updated or deleted.
+ /// Заменяет одну эквивалентную связь другой, удаляя первую, ссылки либо обновляются либо удаляются.
///
+ ///
+ /// Communication address type.
+ /// Тип адреса связи.
+ ///
+ ///
+ /// The links Storage.
+ /// Хранилище связи.
+ ///
+ ///
+ /// The previous link index.
+ /// Предыдущий индекс связи.
+ ///
+ ///
+ /// The new link index.
+ /// Новый индекс связи.
+ ///
+ ///
+ /// Returns the new link index.
+ /// Возвращает новый индекс свзяи.
+ ///
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static TLink MergeAndDelete(this ILinks links, TLink oldLinkIndex, TLink newLinkIndex)
{
@@ -1258,22 +1782,20 @@ public static TLink MergeAndDelete(this ILinks links, TLink oldLin
}
///
- ///
- /// Decorates the with automatic uniqueness and usages resolution using the specified links.
- ///
- ///
+ /// Adds the following decorators to a link: a decorator that solves the problem of cascading links, removing links with empty content, and uniquely-used cascading links.
+ /// Дабавляет следующие декораторы к связи:декоратор, разешающий проблему каскадного использования связей, удаления связей с пустым содержанием и уникально-используемых каскадных связей.
///
///
- /// The link.
- ///
+ /// Communication address type.
+ /// Тип адреса связи.
///
///
- /// The links.
- ///
+ /// The links storage.
+ /// Хранилище свщяей.
///
///
- /// The links.
- ///
+ /// Returns the links.
+ /// Возвращает связи.
///
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static ILinks DecorateWithAutomaticUniquenessAndUsagesResolution(this ILinks links)
@@ -1285,26 +1807,24 @@ public static ILinks DecorateWithAutomaticUniquenessAndUsagesResolution
- ///
- /// Formats the links.
- ///
- ///
+ /// Gives the value of link in a specific format.
+ /// Выдает значение связи в определенном формате.
///
///
- /// The link.
- ///
+ /// Communication address type.
+ /// Тип адреса связи.
///
///
- /// The links.
- ///
+ /// The Links Storage.
+ /// Хранилище связей.
///
///
/// The link.
///
///
///
- /// The string
- ///
+ /// Formatted string with link values.
+ /// Форматированная строка со значениями связи.
///
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static string Format(this ILinks links, IList link)
@@ -1314,28 +1834,26 @@ public static string Format(this ILinks links, IList link)
}
///
- ///
- /// Formats the links.
- ///
- ///
+ /// Gets a link by index and displays the resulting link in a specific format.
+ /// Получает связь по индексу и выводит полученную связь в определенном формате.
///
///
- /// The link.
- ///
+ /// Communication address type.
+ /// Тип адреса связи.
///
///
- /// The links.
- ///
+ /// The Links storage.
+ /// Хранилище связей.
///
///
- /// The link.
- ///
+ /// The Link.
+ /// Связь.
///
///
- /// The string
- ///
+ /// Formatted string with link values.
+ /// Форматированная строка со значениями связи.
///
[MethodImpl(MethodImplOptions.AggressiveInlining)]
public static string Format(this ILinks links, TLink link) => links.Format(links.GetLink(link));
}
-}
\ No newline at end of file
+}