Added cons.
[mozart2.git] / vtable.m4
blob4f42e1cd580e7d4f6b77f863192f91f7d849d887
1 m4_define(«PPI_VTable_Count»,0)m4_dnl
2 m4_define(«PP_VTABLE_DECL»,«m4_dnl
3 m4_define(«PPI_VTable»PPI_VTable_Count«Feature»,«$1»)m4_dnl
4 m4_define(«PPI_VTable_Count»,m4_incr(PPI_VTable_Count))m4_dnl
5 »)m4_dnl
6 m4_define(«PP_VTABLE_SET»,«m4_dnl
7 m4_define(«PPI_VTable_$1_Val»,«$2»)m4_dnl
8 »)m4_dnl
9 m4_define(«PPI_VTable_Def»,«m4_dnl
10 PP_VTABLE_SET(m4_defn(«PPI_VTable$1Feature»),«$3.»m4_defn(«PPI_VTable$1Feature»))m4_dnl
11 m4_ifelse(«$1»,«$2»,«»,«PPI_VTable_Def(m4_incr($1),«$2»,«$3»)»)m4_dnl
12 »)m4_dnl
13 m4_define(«PP_VTABLE_DEF»,«m4_dnl
14 PPI_VTable_Def(0,m4_decr(PPI_VTable_Count),«$1»)m4_dnl
15 »)m4_dnl
16 m4_define(«PPI_VTable_Produce»,«m4_dnl
17 m4_ifelse(«$1»,0,«
18 »,«,
19 »)m4_dnl
20 m4_defn(«PPI_VTable_»m4_defn(«PPI_VTable$1Feature»)«_Val»)m4_dnl
21 m4_undefine(«PPI_VTable_»m4_defn(«PPI_VTable$1Feature»)«_Val»)m4_dnl
22 m4_ifelse(«$1»,«$2»,«»,«PPI_VTable_Produce(m4_incr($1),«$2»,«$3»)»)m4_dnl
23 »)m4_dnl
24 m4_define(«PP_VTABLE_PRODUCE»,«m4_dnl
25 PPI_VTable_Produce(0,m4_decr(PPI_VTable_Count))m4_dnl
26 »)m4_dnl