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

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

  •  16-09-2019
  •  | 
  •  

Вопрос

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

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

Кажется, это работает, но есть ли способ получше?Просто мне кажется, что я чего-то не понимаю.

Это было полезно?

Решение

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

syntax Cost = Language.Grammar.Decimal

Язык.Базовое "пространство имен" также содержит несколько полезных элементов.Оба языка.Базовый и языковой.Грамматика встроены в intellipad.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top