diff options
| author | aarne <aarne@chalmers.se> | 2011-02-25 15:44:25 +0000 |
|---|---|---|
| committer | aarne <aarne@chalmers.se> | 2011-02-25 15:44:25 +0000 |
| commit | 77b02544fb91a658346f25019cbf2a21b79f9081 (patch) | |
| tree | 9f54c2af27a0ee5e328c6984abdaa6ae967009d6 /examples/dates/Dates.gf | |
| parent | 390566b17e69da2045a49e3da1f8debc60d42ccd (diff) | |
simple grammar for dates
Diffstat (limited to 'examples/dates/Dates.gf')
| -rw-r--r-- | examples/dates/Dates.gf | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/examples/dates/Dates.gf b/examples/dates/Dates.gf new file mode 100644 index 000000000..9ac664a1c --- /dev/null +++ b/examples/dates/Dates.gf @@ -0,0 +1,32 @@ +abstract Dates = { + +flags startcat = Date ; + +cat + Date ; Year ; Month ; Day ; Time ; Hour ; Minute ; Weekday ; Ampm ; + +fun + DFull : Year -> Month -> Day -> Weekday -> Time -> Date ; + + MkYear : Int -> Year ; + + MJan, MFeb, MMar, MApr, MMay, MJun, MJul, MAug, MSep, MOct, MNov, MDec : Month ; + + MkDay : Int -> Day ; + + MkTime : Ampm -> Hour -> Minute -> Time ; + + H01, H02, H03, H04, H05, H06, H07, H08, H09, H10, H11, H12 : Hour ; + + MkMinute : Int -> Minute ; + + WSun, WMon, WTue, WWed, WThu, WFri, WSat : Weekday ; + + AM, PM : Ampm ; + +-- noncanonical ways + + DToday, DYesterday, DTomorrow : Time -> Date ; + +} + |
