3
fslex
및 fsyacc
을 사용하여 작은 DSL 파서를 작성하려고합니다. 입력은 서로 다른 렉싱 규칙을 필요로하는 두 가지 다른 언어의 인터리빙 청크로 구성됩니다. 지원을 위해 내 fslex
파일을 어떻게 작성합니까? fslex - 두 토큰 세트 간을 전환하는 방법은 무엇입니까?
fslex
파일을 정의하는 방법이 될 것 같아요?)
는 내가 현재 가지고하면이 같은 것입니다 :
토큰이core
파서에 의해 반환됩니다 일단
rule tokenize = parse
| "core" { core lexbuf }
...
and core = parse
| ...
이 건은, 입력의 다음 부분은 대신 tokenize
에 전달됩니다된다. 그러나 나는 (그대로) core
상태에 머물고 싶어. 어떻게해야합니까?
감사합니다.