@@ -24,6 +24,7 @@ let (ptmReturn,
2424 ptmMkDefinition,
2525 ptmMkInductive,
2626 ptmVariable,
27+ ptmSymbol,
2728
2829 ptmFreshName,
2930
@@ -67,6 +68,7 @@ let (ptmReturn,
6768 r_template_monad_prop_p " tmMkDefinition" ,
6869 r_template_monad_prop_p " tmMkInductive" ,
6970 r_template_monad_prop_p " tmVariable" ,
71+ r_template_monad_prop_p " tmSymbol" ,
7072
7173 r_template_monad_prop_p " tmFreshName" ,
7274
@@ -179,6 +181,7 @@ type template_monad =
179181 | TmAxiomTerm of Constr. t * Constr. t
180182 | TmMkInductive of Constr. t * Constr. t
181183 | TmVariable of Constr. t * Constr. t
184+ | TmSymbol of Constr. t * Constr. t
182185
183186 | TmFreshName of Constr. t
184187
@@ -400,6 +403,10 @@ let next_action env evd (pgm : constr) : template_monad * _ =
400403 match args with
401404 | name ::ty ::[] -> (TmVariable (name,ty) , universes)
402405 | _ -> monad_failure " tmVariable" 2
406+ else if eq_gr ptmSymbol then
407+ match args with
408+ | name :: ty :: [] -> (TmSymbol (name, ty), universes)
409+ | _ -> monad_failure " tmSymbol" 2
403410 else if eq_gr ttmInductive then
404411 match args with
405412 | inferu :: mind ::[] -> (TmMkInductive (inferu, mind), universes)
0 commit comments