mirror of
https://github.com/GrammaticalFramework/gf-core.git
synced 2026-05-14 05:32:51 -06:00
70 lines
1.7 KiB
Plaintext
70 lines
1.7 KiB
Plaintext
--# -path=.:present
|
|
concrete TimeEng of Time = NumeralEng **
|
|
open Prelude, CatEng, ParadigmsEng, ResEng in {
|
|
|
|
lincat
|
|
Date = SS ;
|
|
Year = SS;
|
|
Month = SS ;
|
|
MonthName = SS ;
|
|
Day = SS ;
|
|
Weekday = N ;
|
|
Hour = SS ;
|
|
Minute = SS ;
|
|
Time = SS ;
|
|
|
|
lin
|
|
WeekdayDate day = ss (day.s ! singular ! nominative) ;
|
|
WeekdayTimeDate day time = ss (day.s ! singular ! nominative ++ "at" ++ time.s) ;
|
|
MonthDayDate month day = variants { ss ("the" ++ day.s ++ "of" ++ month.s);
|
|
ss (month.s ++ day.s) } ;
|
|
YearDate year = ss (year.s) ;
|
|
YearMonthDate year month = ss (month.s ++ year.s) ;
|
|
YearMonthDayDate year month day = variants { ss ("the" ++ day.s ++ "of" ++ month.s ++ "," ++ year.s);
|
|
ss (month.s ++ day.s ++ "," ++ year.s) } ;
|
|
|
|
|
|
NumYear n = {s = n.s ! NCard} ;
|
|
DigYear n = {s = n.s ! NCard} ;
|
|
|
|
NumMonth n = {s = n.s ! NCard} ;
|
|
DigMonth n = {s = n.s ! NCard} ;
|
|
NameMonth n = { s = n.s } ;
|
|
|
|
NumDay n = {s = n.s ! NOrd} ;
|
|
DigDay n = {s = n.s ! NOrd} ;
|
|
|
|
FormalTime = infixSS ["hundred and"] ;
|
|
PastTime h m = ss (m.s ++ "past" ++ h.s) ;
|
|
ToTime h m = ss (m.s ++ "to" ++ h.s) ;
|
|
HourTime h = ss (h.s ++ "o'clock") ;
|
|
ExactTime h = ss (h.s ++ "sharp") ;
|
|
|
|
NumHour n = {s = n.s ! NCard} ;
|
|
DigHour n = {s = n.s ! NCard} ;
|
|
NumMinute n = {s = n.s ! NCard} ;
|
|
DigMinute n = {s = n.s ! NCard} ;
|
|
|
|
january = ss "January" ;
|
|
february = ss "February" ;
|
|
march = ss "March" ;
|
|
april = ss "April" ;
|
|
may = ss "May" ;
|
|
june = ss "June" ;
|
|
july = ss "July" ;
|
|
august = ss "August" ;
|
|
september = ss "September" ;
|
|
october = ss "October" ;
|
|
november = ss "November" ;
|
|
december = ss "December" ;
|
|
|
|
monday = mkN "Monday" ;
|
|
tuesday = mkN "Tuesday" ;
|
|
wednesday = mkN "Wednesday" ;
|
|
thursday = mkN "Thursday" ;
|
|
friday = mkN "Friday" ;
|
|
saturday = mkN "Saturday" ;
|
|
sunday = mkN "Sunday" ;
|
|
|
|
} ;
|