2016-04-28 22 views
1

Ich muss einen bereits Tokenized-Stream des Typs UInt16 seq analysieren.
Wie kann ich das mit FParsec tun?
Alle Top-Level-Funktionen, die ich in der Referenz finden Sie unter charstream s.Verwenden Sie FParsec auf bereits Tokenized UInt16 Stream

Im Moment konvertiere ich die UInt16 s zu char s was albern scheint.

+0

Nur gefunden, dass 'type Parser <'Ergebnis,' UserState> = CharStream 10 -> Antworten <'Result>' So könnte das doch nicht möglich sein? – 3dGrabber

+0

Ich bin _relatively_ neu zu F #, aber ich habe FParsec zuvor verwendet und fand es viel bequemer zu verwenden als ein Parser-Generator. – 3dGrabber

+0

Danke für den Hinweis. Ich lese gerade [this] (https://fsharpfforfunandprofit.com/posts/understanding-parser-combinators/), was Parser-Kombinatoren mit F # erklärt. – 3dGrabber

Antwort

0

Leider ist es nicht möglich, FParsec auf etwas anderem als CharStream zu verwenden.

Ich löste das Problem, indem ich einen einfachen Parserkombinator selbst schrieb, this article verwendend.
Überraschenderweise war dies nur einen Tag Arbeit wert.
Ich habe dabei viel über Parser-Kombinatoren gelernt.