forked from GitHub/gf-core
timetable
This commit is contained in:
31
grammars/timetable/Timetable.gf
Normal file
31
grammars/timetable/Timetable.gf
Normal file
@@ -0,0 +1,31 @@
|
||||
abstract Timetable = {
|
||||
cat
|
||||
Table ;
|
||||
TrainList CityList ;
|
||||
City ;
|
||||
CityList ;
|
||||
Train CityList ;
|
||||
Stop ;
|
||||
Time ;
|
||||
Number ;
|
||||
|
||||
fun
|
||||
MkTable : (cs : CityList) -> TrainList cs -> Table ;
|
||||
NilTrain : (cs : CityList) -> TrainList cs ;
|
||||
ConsTrain :
|
||||
(cs : CityList) -> Number -> Train cs -> TrainList cs -> TrainList cs ;
|
||||
OneCity : City -> CityList ;
|
||||
ConsCity : City -> CityList -> CityList ;
|
||||
|
||||
StopTime : Time -> Stop ;
|
||||
NoStop : Stop ;
|
||||
|
||||
LocTrain : (c : City) -> Stop -> Train (OneCity c) ;
|
||||
CityTrain :
|
||||
(c : City) -> Stop -> (cs : CityList) ->
|
||||
Train cs -> Train (ConsCity c cs) ;
|
||||
|
||||
T : Int -> Time ;
|
||||
N : Int -> Number ;
|
||||
C : String -> City ;
|
||||
}
|
||||
Reference in New Issue
Block a user