Gibt es eine bessere Art und Weise eine Dezimalzahl in einem MGrammar zu definieren?
Frage
Ich arbeite an einem DSL in dem neuen Microsoft-M Grammatik, und es muss Dezimalwerte ermöglichen. Ich habe dezimal definiert als
token digits = "0".."9";
token spot = ".";
token decimal = digits+ | digits+ spot digits+ | spot digits+;
Das scheint zu funktionieren, aber gibt es einen besseren Weg? Es fühlt sich an wie ich etwas fehlte.
Lösung
Nach viel Graben fand ich, dass Sie die Build-in Language.Grammar.Decimal verwenden können. Wie in
syntax Cost = Language.Grammar.Decimal
Der Language.Base „Namespace“ hat auch einige nützliche Bits. Sowohl Language.Base und Language.Grammar um IntelliPad gebaut werden.
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow