Skip to content

Commit 742bad4

Browse files
committed
Добавлен флаг отладки аналогичный декоратору
1 parent 6ab45a8 commit 742bad4

File tree

2 files changed

+20
-1
lines changed

2 files changed

+20
-1
lines changed

packagedef

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
Описание.Имя("lambdas")
2-
.Версия("0.1.1")
2+
.Версия("0.1.2")
33
.Автор("Кирилл Черненко")
44
.АдресАвтора("https://github.com/sfaqer")
55
.Описание("API для реализации функциональных интерфейсов для OneScript")

src/Классы/ЛямбдаВыражение.os

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
Перем мИнтерфейс; // Функциональный интерфейс для лямбда выражения
77
Перем мКонтекст; // Структура с контекстом для лямбда выражения
88
Перем мОбъект; // Объект который будет захвачен в лямбда выражение
9+
Перем Отладка; // Отладочное сохранение текста сценария в файл
910

1011
Перем СодержитВозвратЗначения; // Регулярное выражение проверяющее наличие возврата значения
1112
Перем ЭтоЛямбдаВыражение; // Регулярное выражение проверяющее лямбда выражение
@@ -101,6 +102,22 @@
101102

102103
КонецФункции
103104

105+
// Включает возможность отладки. Достигается сохранением текста модуля во временный файл.
106+
//
107+
// Параметры:
108+
// Включена - Булево - Включить отладку
109+
//
110+
// Возвращаемое значение:
111+
// ЛямбдаВыражение - Инстанс текущего выражения
112+
//
113+
Функция Отладка(Включена = Истина) Экспорт
114+
115+
Отладка = Включена;
116+
117+
Возврат ЭтотОбъект;
118+
119+
КонецФункции
120+
104121
// Возвращает действие (делегат) на метод созданный по лямбда выражению
105122
//
106123
// Возвращаемое значение:
@@ -143,6 +160,7 @@
143160
КонецЦикла;
144161

145162
Построитель = Новый ПостроительДекоратора(мОбъект)
163+
.Отладка(Отладка)
146164
.Метод(Метод);
147165

148166
Для каждого ПеременнаяИЗначение Из мКонтекст Цикл
@@ -234,6 +252,7 @@
234252

235253
мВыражение = Выражение;
236254
мКонтекст = Новый Структура();
255+
Отладка = Ложь;
237256

238257
РазобратьВыражение(Выражение);
239258

0 commit comments

Comments
 (0)