Есть ли лучший способ определить десятичное число в MGrammar?

Я работаю над DSL в новой грамматике Microsoft, и она должна разрешать десятичные значения. Я определил десятичную как

token digits = "0".."9";
token spot = ".";
token decimal = digits+ | digits+ spot digits+ | spot digits+;

Кажется, это работает, но есть ли лучший способ? Такое ощущение, что я что-то упустил.

1 ответ

Решение

После долгих поисков я обнаружил, что вы можете использовать сборку в Language.Grammar.Decimal. Как в

syntax Cost = Language.Grammar.Decimal

"Пространство имен" Language.Base также имеет несколько полезных битов. И Language.Base, и Language.Grammar встроены в intellipad.

Другие вопросы по тегам