(***********************************************************************) (* v * The Coq Proof Assistant / The Coq Development Team *) (* [] | minus [ "minus" ":=" constrarg($aminus) opt_arg_list($l) ] -> [ "minus" $aminus ($LIST $l) ] | div [ "div" ":=" constrarg($adiv) opt_arg_list($l) ] -> [ "div" $adiv ($LIST $l) ] with extra_args : ast list := | nea [] -> [] | with_a [ "with" opt_arg_list($l)] -> [ ($LIST $l) ] with vernac : ast := addfield [ "Add" "Field" constrarg($a) constrarg($aplus) constrarg($amult) constrarg($aone) constrarg($azero) constrarg($aopp) constrarg($aeq) constrarg($ainv) constrarg($rth) constrarg($ainv_l) extra_args($l) "." ] -> [(AddField $a $aplus $amult $aone $azero $aopp $aeq $ainv $rth $ainv_l ($LIST $l))]. Grammar tactic simple_tactic: ast := | field [ "Field" ] -> [(Field)]. Syntax tactic level 0: | field [(Field)] -> ["Field"].