Skip to content

Commit 2f7981d

Browse files
committed
test: покрыть тестом вложенные аннотации как значения параметров
Грамматика Lezer уже поддерживает annotationValue { constValue | Annotation }, поэтому &Пластилин(&Деталька("Имя")) разбирается корректно. Добавлен регрессионный тест, фиксирующий это поведение. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Knr8gmzxGCTqmbLhYXUEue
1 parent 51b9059 commit 2f7981d

1 file changed

Lines changed: 33 additions & 0 deletions

File tree

test/cases.txt

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -230,3 +230,36 @@ Module(
230230
EndProcedure
231231
)
232232
)
233+
234+
# Annotation as annotation parameter value (nested annotation)
235+
236+
&Пластилин(&Деталька("ИмяАппендера"))
237+
Процедура Аппендер()
238+
КонецПроцедуры
239+
240+
==>
241+
242+
Module(
243+
ProcedureDecl(
244+
Annotation(
245+
Ampersand,
246+
AnnotationName(Identifier),
247+
AnnotationParams(
248+
LParen,
249+
AnnotationParam(
250+
Annotation(
251+
Ampersand,
252+
AnnotationName(Identifier),
253+
AnnotationParams(LParen, AnnotationParam(String), RParen)
254+
)
255+
),
256+
RParen
257+
)
258+
),
259+
Procedure,
260+
SubName(Identifier),
261+
LParen,
262+
RParen,
263+
EndProcedure
264+
)
265+
)

0 commit comments

Comments
 (0)