一般的な Flex/Bison パラダイムに適合しない言語を認識しようとしています。セマンティック コンテキストに応じて、完全に異なるトークン ルールがあります。例えば:
main() {
batchblock
{
echo Hello World!
set batchvar=Something
echo %batchvar%
}
}
Bison は明らかにこれらのタイプの文法の認識をサポートしていますが、それらを効果的にサポートするには「字句結合」が必要です。これを行うためのインターフェイスを提供しますが、コンテキストに応じて異なるフレックス正規表現を正確に指定する方法については混乱しています。
前もって感謝します :)