Gibt es eine bessere Art und Weise eine Dezimalzahl in einem MGrammar zu definieren?

StackOverflow https://stackoverflow.com/questions/1282683

  •  16-09-2019
  •  | 
  •  

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.

War es hilfreich?

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
scroll top