mirror of
https://github.com/Nikolay-Shirokov/cc-1c-skills.git
synced 2026-07-14 14:55:16 +03:00
117a06ff3e
13-й тип. Рерайт Emit-EnumProperties на общие хелперы (был легаси-хардкод:
Comment/UseStandardCommands/ChoiceMode/формы/презентации/ChoiceHistoryOnInput).
Emit-EnumValue + comment; Parse-EnumValueShorthand больше не стрингифаит synonym
(строка|{ru,en}). Декомпилятор: снят гейт +Enum; захват EnumValue (values,
короткая строка|объект name/synonym/comment); StandardAttributes register-style
opt-out (блок Order/Ref present 85%, absent → standardAttributes:"").
Class-2 фиксы дефолтов (тип-зависимые, декомпилятор зеркалит компилятор):
- useStandardCommands: у Enum дефолт false (не true)
- quickChoice: у Enum дефолт true (не false)
- пустой <Synonym/> значения ≠ авто-синоним → synonym:"" (аналог object-level фикса)
ПОЛНЫЙ КОРПУС 2545 (acc+erp): match 2545/2545, TOTAL 0, 0 крашей — byte-exact,
order-preserved (сверено с реальными 1С-файлами modulo trailing newline+GUID).
Регресс 50/50 ps1+py, ps1==py identical. spec §7.3, кейс enum-full.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
22 lines
768 B
JSON
22 lines
768 B
JSON
{
|
|
"name": "Перечисление — полный набор возможностей",
|
|
"input": {
|
|
"type": "Enum",
|
|
"name": "СтатусыОбработки",
|
|
"comment": "(Демо)",
|
|
"useStandardCommands": true,
|
|
"choiceMode": "QuickChoice",
|
|
"listPresentation": { "ru": "Статусы обработки", "en": "Processing statuses" },
|
|
"standardAttributes": "",
|
|
"values": [
|
|
{ "name": "Новый", "synonym": { "ru": "Новый", "en": "New" }, "comment": "начальный статус" },
|
|
{ "name": "ВРаботе", "synonym": "" },
|
|
"Завершен"
|
|
]
|
|
},
|
|
"validatePath": "Enums/СтатусыОбработки",
|
|
"expect": {
|
|
"files": ["Enums/СтатусыОбработки.xml"]
|
|
}
|
|
}
|