Files
gf-core/testsuite/lpgf/TablesCnc.gf
2021-02-10 13:55:38 +01:00

27 lines
612 B
Plaintext

concrete TablesCnc of Tables = {
param
R = R1 | R2 ;
Q = Q3 | Q2 | Q1 ;
oper
ParamRec: Type = { r: R; q: Q } ;
lincat
S = Str ;
F = { pr : ParamRec } ;
lin
f1 = { pr = { r = R1; q = Q1 } } ;
f2 = { pr = { r = R1; q = Q2 } } ;
f3 = { pr = { r = R1; q = Q3 } } ;
f4 = { pr = { r = R2; q = Q1 } } ;
f5 = { pr = { r = R2; q = Q2 } } ;
f6 = { pr = { r = R2; q = Q3 } } ;
FtoS f = tbl ! f.pr ;
oper
tbl = table {
{ r = R1 ; q = _ } => "R1 _" ;
{ r = _ ; q = Q2 } => "_ Q2" ;
{ r = R2 ; q = Q3 } => "R2 Q3" ;
_ => "_ _"
} ;
}