我在 FsLexYacc 中实现了一个词法分析器和解析器。为了调试词法分析器,我想打印给定字符串的所有标记。
这是我到目前为止所拥有的:
#load "../.paket/load/net5.0/FsLexYacc.Runtime.fsx"
#load "./Domain.fs"
#load "./Parser.fs"
#load "./Lexer.fs"
open System
open System.IO
open FSharp.Text
open FSharp.Text.Lexing
open Scripting
let allTokens (input : string) =
let lexBuffer = LexBuffer<char>.FromString input
Lexer.tokenize lexBuffer // Only gets first token!
printfn "%A" <| allTokens "1 + 1"
1号
但这只是第一个令牌!
如何将所有标记作为列表或序列获取?