Курс по Raku / Регулярни изрази и граматики / Граматики / Граматики, класове и наследяване / Proto-токени и алтернативи

Тест — Граматики и наследяване

Какво отпечатва следната програма?

grammar Base {
    token TOP  { <word> }
    token word { 'cat' }
}

grammar Pet is Base {
    token word { 'dog' }
}

say Pet.parse('dog').defined;
1True
0False
0「cat」
0「dog」

Pet наследява TOP от Base, но предефинира токена word, за да съпоставя dog. Когато Pet разбира 'dog', се използва собственият му word, така че разборът успява и .defined дава True.

Навигация в курса

Proto-токени и алтернативи   |   Наследете граматика