как изменить парсер XPATH? - PullRequest
       13

как изменить парсер XPATH?

1 голос
/ 08 декабря 2011

Я хочу изменить парсер XPATH, но я не знаю, с чего начать. Код Суре выглядит так:

enter image description here

Любая помощь будет оценена :)

Ответы [ 2 ]

2 голосов
/ 08 декабря 2011

Это выглядит как таблица "shift shift" (см. S и Rs) для парсера LALR. Я предполагаю, что он создается анализатором GOLD, который создает таблицы синтаксического анализа, не зависящие от приложения.

Но вы не сможете разумно изменить это без оригинальной грамматики и генератора синтаксического анализатора.

Зачем вам в любом случае модифицировать отлично работающий парсер XPath? Если он не идеален, почему бы вам просто не использовать идеальный?

1 голос
/ 08 декабря 2011

Бессмысленно пытаться модифицировать синтаксический анализатор, если набор правил и кодов для символов терминала (и лексера) недоступны .

Приведенный код выглядиткак таблица действий для обычного LR-анализатора, управляемого таблицами.Однако вам также понадобится таблица GOTO.

Весь этот подход столь же несостоятельный, как и обратный инжиниринг .Если хотите, просто создайте свой собственный парсер, начиная с чистого нуля, чтобы у вас была свобода и гибкость.

...