1
0
mirror of https://github.com/alei1180/curlone.git synced 2025-11-24 22:53:34 +02:00

refactor: Рефакторинг кода. Причесал манифест. (#213)

This commit is contained in:
Dmitry Ivanov
2025-07-10 21:09:55 +03:00
committed by GitHub
parent ff634627b0
commit 57e6c231ce
7 changed files with 72 additions and 45 deletions

View File

@@ -1,6 +1,5 @@
<package-def>
<class name="КонвертерКомандыCURL" file="src/core/Классы/КонвертерКомандыCURL.os"/>
<class name="ПарсерКонсольнойКоманды" file="src/core/Классы/ПарсерКонсольнойКоманды.os"/>
<class name="ГенераторПрограммногоКода1С" file="src/core/Классы/ГенераторПрограммногоКода1С.os"/>
<class name="ГенераторПрограммногоКодаКоннекторHTTP" file="src/core/Классы/ГенераторПрограммногоКодаКоннекторHTTP.os"/>
</package-def>

View File

@@ -7,9 +7,6 @@
.ВключитьФайл("src")
.ВключитьФайл("img")
.ВключитьФайл("lib")
.ВключитьФайл("tests")
.ВключитьФайл("tools")
.ВключитьФайл("packagedef")
.ВключитьФайл("lib.config")
.ВключитьФайл("autumn-properties.json")
.ВключитьФайл("README.md")
@@ -17,13 +14,12 @@
.ВключитьФайл("NOTICES")
.ЗависитОт("tokenizer", "1.0.2")
.ЗависитОт("logos", "1.7.1")
.ЗависитОт("winow", "0.9.5")
.ЗависитОт("winow", "0.10.0")
.ЗависитОт("autumn", "4.3.10")
.ЗависитОт("autumn-cli", "1.2.0")
.ЗависитОт("coloratos", "0.3.0")
.ЗависитОт("i18n", "1.0.0")
.РазработкаЗависитОт("1bdd")
.ЗависитОт("i18n", "1.0.1")
.РазработкаЗависитОт("1testrunner")
.РазработкаЗависитОт("asserts")
.РазработкаЗависитОт("coverage")
.РазработкаЗависитОт("1commands")
.ИсполняемыйФайл("src/main.os", "curlone")

View File

@@ -124,7 +124,7 @@
Спецификация.Добавить(Новый СпецификацияТокенСимвол("=", "Равенство"));
Спецификация.Добавить(Новый СпецификацияТокенСимвол("@", "Собачка"));
Спецификация.Добавить(Новый СпецификацияТокенСимвол(",", "Запятая"));
Спецификация.Добавить(Новый СпецификацияТокенРегулярноеВыражение(Новый РегулярноеВыражение("[^=;,""]+"), "Строка"));
Спецификация.Добавить(ОбщийНаборИнструментов.ТокенРегулярноеВыражение("^[^=;,""]+", "Строка"));
КонецПроцедуры

View File

@@ -79,11 +79,26 @@
Спецификация.Добавить(Новый СпецификацияТокенСимвол(КавычкаСПоддержкойИнтерполяции, "КавычкаСПоддержкойИнтерполяции"));
Спецификация.Добавить(Новый СпецификацияТокенСимвол(КавычкаБезПоддержкиИнтерполяции, "КавычкаБезПоддержкиИнтерполяции"));
Спецификация.Добавить(Новый СпецификацияТокенСимвол(Символы.ПС, "ПереносСтроки"));
Спецификация.Добавить(ТокенРегулярноеВыражение("^\$(?:[a-zA-Z_][a-zA-Z0-9_]*|\{[a-zA-Z_][a-zA-Z0-9_]*\})", "Переменная"));
Спецификация.Добавить(ТокенРегулярноеВыражение("^(?:&&|\|\||[;&])", "ОператорСвязыванияКоманд"));
Спецификация.Добавить(ТокенРегулярноеВыражение("^\s", "ПробельныйСимвол"));
Спецификация.Добавить(ТокенРегулярноеВыражение("^[^'"";&\$|\\\s]+", "СтрокаБезСлужебныхСимволов"));
Спецификация.Добавить(ТокенРегулярноеВыражение("^[&\$|]", "СлужебныеСимволы"));
Спецификация.Добавить(ОбщийНаборИнструментов.ТокенРегулярноеВыражение(
"^\$(?:[a-zA-Z_][a-zA-Z0-9_]*|\{[a-zA-Z_][a-zA-Z0-9_]*\})",
"Переменная"
));
Спецификация.Добавить(ОбщийНаборИнструментов.ТокенРегулярноеВыражение(
"^(?:&&|\|\||[;&])",
"ОператорСвязыванияКоманд"
));
Спецификация.Добавить(ОбщийНаборИнструментов.ТокенРегулярноеВыражение(
"^\s",
"ПробельныйСимвол"
));
Спецификация.Добавить(ОбщийНаборИнструментов.ТокенРегулярноеВыражение(
"^[^'"";&\$|\\\s]+",
"СтрокаБезСлужебныхСимволов"
));
Спецификация.Добавить(ОбщийНаборИнструментов.ТокенРегулярноеВыражение(
"^[&\$|]",
"СлужебныеСимволы"
));
Возврат Спецификация;
@@ -297,13 +312,4 @@
КонецПроцедуры
Функция ТокенРегулярноеВыражение(Паттерн, ТипТокена)
РегулярноеВыражение = Новый РегулярноеВыражение(Паттерн);
РегулярноеВыражение.Многострочный = Ложь;
Возврат Новый СпецификацияТокенРегулярноеВыражение(РегулярноеВыражение, ТипТокена);
КонецФункции
#КонецОбласти

View File

@@ -59,29 +59,47 @@
Спецификация.Добавить(Новый СпецификацияТокенСимвол("""", "ДвойнаяКавычка"));
Спецификация.Добавить(Новый СпецификацияТокенСимвол(";", "ТочкаСЗапятой"));
Спецификация.Добавить(Новый СпецификацияТокенСимвол(Символы.ПС, "ПереносСтроки"));
Спецификация.Добавить(ТокенРегулярноеВыражение("^\/\/+", "Комментарий"));
Спецификация.Добавить(ТокенРегулярноеВыражение("^Новый\s+[a-zA-Zа-яА-Я]+", "НовыйОбъект"));
Спецификация.Добавить(ТокенРегулярноеВыражение("^[a-zA-Zа-яА-Я_\d]+\s*=", "ОперацияПрисваивания"));
Спецификация.Добавить(ТокенРегулярноеВыражение("^[a-zA-Zа-яА-Я_\d]+\s*(\.\s*[a-zA-Zа-яА-Я_\d]+)+\s*\(", "ВызовМетодаОбъекта"));
Спецификация.Добавить(ТокенРегулярноеВыражение("^[a-zA-Zа-яА-Я_\d]+\s*(\.\s*[a-zA-Zа-яА-Я_\d]+)+", "ОбращениеКОбъекту"));
Спецификация.Добавить(ТокенРегулярноеВыражение("^[a-zA-Zа-яА-Я_\d]+\s*\(", "ВызовФункцииПроцедуры"));
Спецификация.Добавить(ТокенРегулярноеВыражение("^\b(Истина|True|Ложь|False|Если|If|Тогда|Then|Иначе|Else|ИначеЕсли|ElseIf|КонецЕсли|EndIf|Не|Not)\b", "Оператор"));
Спецификация.Добавить(ТокенРегулярноеВыражение("^[a-zA-Zа-яА-Я_\d]+(\.[a-zA-Zа-яА-Я_\d]+)*", "ИмяОбъекта"));
Спецификация.Добавить(ТокенРегулярноеВыражение("^.", "ЛюбойСимвол"));
Спецификация.Добавить(ОбщийНаборИнструментов.ТокенРегулярноеВыражение(
"^\/\/+",
"Комментарий"
));
Спецификация.Добавить(ОбщийНаборИнструментов.ТокенРегулярноеВыражение(
"^Новый\s+[a-zA-Zа-яА-Я]+",
"НовыйОбъект"
));
Спецификация.Добавить(ОбщийНаборИнструментов.ТокенРегулярноеВыражение(
"^[a-zA-Zа-яА-Я_\d]+\s*=",
"ОперацияПрисваивания"
));
Спецификация.Добавить(ОбщийНаборИнструментов.ТокенРегулярноеВыражение(
"^[a-zA-Zа-яА-Я_\d]+\s*(\.\s*[a-zA-Zа-яА-Я_\d]+)+\s*\(",
"ВызовМетодаОбъекта"
));
Спецификация.Добавить(ОбщийНаборИнструментов.ТокенРегулярноеВыражение(
"^[a-zA-Zа-яА-Я_\d]+\s*(\.\s*[a-zA-Zа-яА-Я_\d]+)+",
"ОбращениеКОбъекту"
));
Спецификация.Добавить(ОбщийНаборИнструментов.ТокенРегулярноеВыражение(
"^[a-zA-Zа-яА-Я_\d]+\s*\(",
"ВызовФункцииПроцедуры"
));
Спецификация.Добавить(ОбщийНаборИнструментов.ТокенРегулярноеВыражение(
"^\b(Истина|True|Ложь|False|Если|If|Тогда|Then|Иначе|Else|ИначеЕсли|ElseIf|КонецЕсли|EndIf|Не|Not)\b",
"Оператор"
));
Спецификация.Добавить(ОбщийНаборИнструментов.ТокенРегулярноеВыражение(
"^[a-zA-Zа-яА-Я_\d]+(\.[a-zA-Zа-яА-Я_\d]+)*",
"ИмяОбъекта"
));
Спецификация.Добавить(ОбщийНаборИнструментов.ТокенРегулярноеВыражение(
"^.",
"ЛюбойСимвол"
));
Возврат Спецификация;
КонецФункции
Функция ТокенРегулярноеВыражение(Паттерн, ТипТокена)
РегулярноеВыражение = Новый РегулярноеВыражение(Паттерн);
РегулярноеВыражение.Многострочный = Ложь;
Возврат Новый СпецификацияТокенРегулярноеВыражение(РегулярноеВыражение, ТипТокена);
КонецФункции
Процедура ОбработатьТокен(Токен, ТекущееСостояние)
ТипТокена = Токен.ТипТокена();

View File

@@ -1,6 +1,3 @@
#Использовать i18n
ПутьКРесурсам = Новый Файл(ОбъединитьПути(ТекущийСценарий().Каталог, "../../locales")).ПолноеИмя;
Мультиязычность.УстановитьЛокальПоУмолчанию("ru");
МенеджерРесурсовЛокализации.ДобавитьКаталог(ПутьКРесурсам);
МенеджерРесурсовЛокализации.ДобавитьКаталог(ОбъединитьПути(ТекущийСценарий().Каталог, "../../locales"));

View File

@@ -1,3 +1,5 @@
#Использовать tokenizer
#Область ПрограммныйИнтерфейс
Процедура ДополнитьМассив(МассивПриемник, МассивИсточник) Экспорт
@@ -124,4 +126,13 @@
Возврат Схема = ПротоколыURL.FTP Или Схема = ПротоколыURL.FTPS;
КонецФункции
Функция ТокенРегулярноеВыражение(Паттерн, ТипТокена) Экспорт
РегулярноеВыражение = Новый РегулярноеВыражение(Паттерн);
РегулярноеВыражение.Многострочный = Ложь;
Возврат Новый СпецификацияТокенРегулярноеВыражение(РегулярноеВыражение, ТипТокена);
КонецФункции
#КонецОбласти