Пользовательские переменные экземпляра и инициализация с PetitParser

Насколько я знаю, PetitParser инициализирует каждую переменную экземпляра производственным методом с тем же именем. Что нужно сделать, чтобы добавить пользовательскую переменную экземпляра и инициализировать ее в initialize метод например?

1 ответ

Решение

Вы можете переопределить метод на стороне класса #ignoredNames в подклассах добавить свои собственные переменные экземпляра, которые PetitParser не трогает:

PPCompositeParser class>>#ignoredNames
    "Answer a collection of instance-variables that should 
     not be automatically initialized with productions, but
     that are used internal to the composite parser."

     ^ PPCompositeParser allInstVarNames
Другие вопросы по тегам