mirror of
https://github.com/GrammaticalFramework/gf-rgl.git
synced 2026-06-22 17:56:21 -06:00
The new Decimal API
This commit is contained in:
@@ -79,6 +79,7 @@ concrete CatHun of Cat = CommonX - [Adv] ** open ResHun, Prelude in {
|
||||
Card = ResHun.Numeral ;
|
||||
Numeral = ResHun.Numeral ;
|
||||
Digits = {s : CardOrd => Str} ;
|
||||
Decimal = {s : CardOrd => Str; hasDot : Bool} ;
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -137,6 +137,10 @@ concrete NounHun of Noun = CatHun ** open
|
||||
s = \\place => dig.s ! NCard ;
|
||||
} ;
|
||||
|
||||
NumDecimal dec = dec ** {
|
||||
s = \\place => dec.s ! NCard ;
|
||||
} ;
|
||||
|
||||
-- : Numeral -> Card ;
|
||||
NumNumeral num = num ;
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
concrete NumeralHun of Numeral = CatHun [Numeral,Digits] **
|
||||
concrete NumeralHun of Numeral = CatHun [Numeral,Digits,Decimal] **
|
||||
open Prelude, ResHun in {
|
||||
|
||||
lincat
|
||||
@@ -115,6 +115,13 @@ oper
|
||||
D_8 = mkDig "8" ;
|
||||
D_9 = mkDig "9" ;
|
||||
|
||||
PosDecimal d = d ** {hasDot=False} ;
|
||||
NegDecinal d = {
|
||||
s = \\x => "-" ++ BIND ++ d.s ! x ;
|
||||
n = numNumber ;
|
||||
hasDot=False
|
||||
} ;
|
||||
|
||||
oper
|
||||
mkDig : Str -> TDigit = \s -> {
|
||||
s = s ;
|
||||
|
||||
Reference in New Issue
Block a user