Skip to content

Commit da139a3

Browse files
committed
Добавлен режим отладки
1 parent 3e10c1f commit da139a3

File tree

4 files changed

+22
-25
lines changed

4 files changed

+22
-25
lines changed

readme.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
- [Возможности {#возможности}](#возможности-возможности)
88
- [Планы по развитию {#планы-по-развитию}](#планы-по-развитию-планы-по-развитию)
99
- [Установка {#установка}](#установка-установка)
10+
- [Отладка {#отладка}](#отладка-отладка)
1011
- [Синтаксис {#синтаксис}](#синтаксис-синтаксис)
1112
- [Использование {#использование}](#использование-использование)
1213
- [Разделение контекста (импорты) {#разделение-контекста-импорты}](#разделение-контекста-импорты-разделение-контекста-импорты)
@@ -60,6 +61,10 @@
6061

6162
[↑ В начало](#оглавление)
6263

64+
### Отладка {#отладка}
65+
66+
Так как основной библиотекой является decorator, многие объекты генерируются, и для того чтобы отлаживать сгенерированные объекты (маловероятно, что это понадобится), можно добавить флаг `-debug` в конфигурацию отладки: `"args": ["-debug"]`.
67+
6368
### Синтаксис {#синтаксис}
6469

6570
При использовании библиотеки понятие «модуль» исчезает; отныне есть только классы.

src/Классы/КонтейнерПакета.os

Lines changed: 8 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@
5757
Возврат ОбъектыПоТипу;
5858
КонецФункции
5959

60-
Процедура ПодготовитьОбъекты() Экспорт
60+
Процедура ПодготовитьОбъекты(РежимОтладки = Ложь) Экспорт
6161

6262
ЗначенияТиповАвтоподстановки = Новый Соответствие();
6363
ЗначенияТиповАвтоподстановки.Вставить("Строка", "");
@@ -352,19 +352,7 @@
352352

353353
НовыйПараметрМетода = Новый ПараметрМетода(Параметр.Имя);
354354
ПеречислениеПараметров = ПеречислениеПараметров + ?(ПеречислениеПараметров = "", "", ", ") + Параметр.Имя;
355-
356-
// Для Каждого АннотацияПараметра Из Параметр.Аннотации Цикл
357-
358-
// НоваяАннотация = Новый Аннотация(АннотацияПараметра.Имя);
359-
360-
// Для Каждого ПараметрАннотации Из АннотацияПараметра.Параметры Цикл
361-
// НоваяАннотация.Параметр(ПараметрАннотации.Имя, ПараметрАннотации.Значение);
362-
// КонецЦикла;
363-
364-
// НовыйПараметрМетода.Аннотация(НоваяАннотация);
365-
366-
// КонецЦикла;
367-
355+
368356
НовыйМетод.Параметр(НовыйПараметрМетода);
369357

370358
КонецЦикла;
@@ -384,9 +372,7 @@
384372
СтрокаДанных.Декоратор = Декоратор;
385373
СтрокаДанных.ЛокальныйДекоратор = ЛокальныйДекоратор;
386374
СтрокаДанных.Генерируемый = Ложь;
387-
388-
// ДобавитьПерехватчикиКОбъекту(Объект, Декоратор, ЛокальныйДекоратор, МетодНаследуемого);
389-
375+
390376
КонецЦикла;
391377

392378
КонецЕсли;
@@ -481,9 +467,7 @@
481467
СтрокаДанных.Декоратор = Декоратор;
482468
СтрокаДанных.ЛокальныйДекоратор = ЛокальныйДекоратор;
483469
СтрокаДанных.Генерируемый = Ложь;
484-
485-
// ДобавитьПерехватчикиКОбъекту(Объект, Декоратор, ЛокальныйДекоратор, Метод);
486-
470+
487471
КонецЦикла;
488472

489473
Поле = Новый Поле("ФИНТ_ВнешнийОбъект");
@@ -509,8 +493,10 @@
509493
ИмяТипаЛокальногоДекоратора = ТипОбъектаСтрокой + "_Локально";
510494
ИмяТипаЭкспортногоДекоратора = ТипОбъектаСтрокой + "_Экспорт";
511495

512-
Декоратор.Отладка();
513-
ЛокальныйДекоратор.Отладка();
496+
Если РежимОтладки Тогда
497+
Декоратор.Отладка();
498+
ЛокальныйДекоратор.Отладка();
499+
КонецЕсли;
514500

515501
СтрокаПодготовленногоДекоратора = ДанныеПодготовленныхДекораторов.Добавить();
516502
СтрокаПодготовленногоДекоратора.Объект = Объект;

src/Классы/КонтекстПриложения.os

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@
5050

5151
КонецПроцедуры
5252

53-
Процедура Инициализировать() Экспорт
53+
Процедура Инициализировать(РежимОтладки = Ложь) Экспорт
5454

5555
Для каждого ИмяПакета Из ИменаПодключаемыхКомпонентов Цикл
5656
ПодключитьБиблиотеку(ИмяПакета);
@@ -60,7 +60,7 @@
6060

6161
Для каждого КонтейнерПакета Из Контейнеры Цикл
6262

63-
КонтейнерПакета.Значение.ПодготовитьОбъекты();
63+
КонтейнерПакета.Значение.ПодготовитьОбъекты(РежимОтладки);
6464
ОписаниеТочкиВходаКонтейнера = КонтейнерПакета.Значение.ОписаниеТочкиВхода();
6565

6666
Если ОписаниеТочкиВхода <> Неопределено И ОписаниеТочкиВходаКонтейнера <> Неопределено Тогда

src/Классы/Приложение.os

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,12 @@
33

44
Процедура Запустить() Экспорт
55

6+
РежимОтладки = АргументыКоманднойСтроки.Найти("-debug") <> Неопределено;
7+
8+
Если РежимОтладки Тогда
9+
Сообщить("Включен режим отладки");
10+
КонецЕсли;
11+
612
КонтекстПриложения = Новый КонтекстПриложения();
713
ИзвестныеТипы = Рефлексия.ТаблицаИзвестныхТипов(Новый Структура("Пользовательский", Истина));
814

@@ -12,7 +18,7 @@
1218
КонецЕсли;
1319
КонецЦикла;
1420

15-
КонтекстПриложения.Инициализировать();
21+
КонтекстПриложения.Инициализировать(РежимОтладки);
1622

1723
ОписаниеТочкиВхода = КонтекстПриложения.ОписаниеТочкиВхода();
1824

0 commit comments

Comments
 (0)