Skip to content

Commit cb99362

Browse files
committed
добавлены комментарии
1 parent 4b5ccea commit cb99362

File tree

2 files changed

+11
-4
lines changed

2 files changed

+11
-4
lines changed

src/OneScript.Core/Values/IBslComparable.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,8 @@ This Source Code Form is subject to the terms of the
88
namespace OneScript.Values
99
{
1010
/// <summary>
11-
/// Èíòåðôåéñ-ìàðêåð äëÿ ïðèìèòèâíûõ òèïîâ, äîïóñêàþùèõ ñðàâíåíèå íà áîëüøå/ìåíüøå.
12-
/// Èñïîëüçóåòñÿ GenericIValueComparer äëÿ îïðåäåëåíèÿ âîçìîæíîñòè ñðàâíåíèÿ.
11+
/// Интерфейс-маркер для примитивных типов, допускающих сравнение на больше/меньше.
12+
/// Используется GenericIValueComparer для определения возможности сравнения.
1313
/// </summary>
1414
public interface IBslComparable
1515
{

src/ScriptEngine/Machine/GenericIValueComparer.cs

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -67,8 +67,15 @@ private int CompareAsStrings(IValue x, IValue y)
6767
private int CompareByPresentations(IValue x, IValue y)
6868
{
6969
return ((BslValue)x).ToString(_process).CompareTo(((BslValue)y).ToString(_process));
70-
}
71-
70+
}
71+
72+
/// <summary>
73+
/// Сравнение переменных разных типов. Правила сравнения соответствуют 1С v8.3.27:
74+
/// Переменные типа "Тип" следуют за всеми прочими;
75+
/// Другие примитивные типы предшествуют объектным типам;
76+
/// Между собой примитивные типы упорядочиваются в последовательности, указанной в orderedTypes;
77+
/// Объектные типы упорядочиваются по строковому представлению.
78+
/// </summary>
7279
private int CompareByTypes(IValue x, IValue y)
7380
{
7481
var ix = orderedTypes.IndexOf(x.SystemType);

0 commit comments

Comments
 (0)