题
我的工作在微软的新的M语法一个DSL,它需要允许十进制值。我已经定义了数字作为
token digits = "0".."9";
token spot = ".";
token decimal = digits+ | digits+ spot digits+ | spot digits+;
这似乎工作,但有没有更好的办法?它只是感觉就像我失去了一些东西。
解决方案
多挖后,我发现,您可以使用Language.Grammar.Decimal构建。如在
syntax Cost = Language.Grammar.Decimal
在Language.Base“命名空间”中也有一些有用的比特。既Language.Base和Language.Grammar内置于intellipad。
不隶属于 StackOverflow