From 3ef7797ef6fc605dfafb32523261fe1b023aeecb Mon Sep 17 00:00:00 2001 From: Samuel Mimram Date: Fri, 28 Apr 2006 14:59:16 +0000 Subject: Imported Upstream version 8.0pl3+8.1alpha --- syntax/PPCases.v | 96 -------------------------------------------------------- 1 file changed, 96 deletions(-) delete mode 100644 syntax/PPCases.v (limited to 'syntax/PPCases.v') diff --git a/syntax/PPCases.v b/syntax/PPCases.v deleted file mode 100644 index d0f75dcf..00000000 --- a/syntax/PPCases.v +++ /dev/null @@ -1,96 +0,0 @@ -(************************************************************************) -(* v * The Coq Proof Assistant / The Coq Development Team *) -(* > ] - -> [ $c1:L [1 0] (TOMATCH ($LIST $cl)) ] - | tomatch_one [ << (TOMATCH $c1) >> ] -> [$c1:L] - ; - - level 10: - as_patt [ << (PATTAS $var $patt) >> ] -> [$patt:L" as "$var] - ; - - level 0: - ne_pattlist_nil [ << (PATTLIST) >> ] -> [ ] - | ne_pattlist_cons [ << (PATTLIST $patt ($LIST $lpatt)) >> ] - -> [$patt:E " " (PATTLIST ($LIST $lpatt))] - ; - - level 8: - equation [ << (EQN $rhs ($LIST $lhs)) >> ] - -> [ [ (PATTLIST ($LIST $lhs)) "=> " [0 1] $rhs:E] ] - ; - - level 0: - bar_eqnlist_nil [ << (BAREQNLIST) >> ] -> [ ] - | bar_eqnlist_cons [ << (BAREQNLIST $eqn ($LIST $leqn)) >> ] - -> [ "| " $eqn [1 0] (BAREQNLIST ($LIST $leqn)) ] - | bar_eqnlist_one [ << (BAREQNLIST $eqn) >> ] - -> [ "| " $eqn ] - ; - - level 10: - pattconstruct [ << (PATTCONSTRUCT $C $D ($LIST $T)) >> ] -> - [(APPLIST $C $D ($LIST $T))] - ; - - level 0: - pattconstructatomic [ << (PATTCONSTRUCT $C) >> ] -> [ $C:E ] - ; - - level 8: - - cases_exp_none [ << (CASES $pred $tomatch) >> ] - -> [ [ (ELIMPRED $pred) - [ "Cases"[1 2] $tomatch:E [1 0] "of"] [1 0] "end"] ] - - | cases_exp_one [ << (CASES $pred $tomatch $eqn) >> ] - -> [ [ (ELIMPRED $pred) - [ [ "Cases"[1 2] $tomatch:E [1 0] "of"] [1 2] - $eqn [1 0] - "end"] ] ] - - | cases_exp_many [ << (CASES $pred $tomatch $eqn1 $eqn2 ($LIST $eqns)) >> ] - -> [ [ (ELIMPRED $pred) - [ [ "Cases"[1 2] $tomatch:E [1 0] "of"] [1 2] - $eqn1 [1 0] - (BAREQNLIST $eqn2 ($LIST $eqns)) [1 0] - "end"] ] ] - - (* "level" indifférent pour ce qui suit *) - | let_binder_var [ << (LETBINDER ($VAR $id)) >> ] -> [ $id ] - | let_binder_app - [<<(LETBINDER (PATTCONSTRUCT $toforget ($VAR $id) ($LIST $vars)))>>] - -> [ "(" $id (LETBINDERTAIL ($LIST $vars)) ")" ] - - | let_binder_tail_nil [ << (LETBINDERTAIL) >> ] -> [ ] - | let_binder_tail_cons [ << (LETBINDERTAIL $var ($LIST $vars)) >> ] - -> [ "," [1 0] $var (LETBINDERTAIL ($LIST $vars)) ] - - ; - - (* On force les parenthèses autour d'un "if" sous-terme (même si le - parsing est lui plus tolérant) *) - level 10: - boolean_cases [ << (FORCEIF $pred $tomatch $c1 $c2) >> ] - -> [ [ (ELIMPRED $pred) - [ "if " [ $tomatch:L ] - [1 0] [ "then" [1 1] $c1:L ] - [1 0] [ "else" [1 1] $c2:L ] ] ] ] - - | let_cases [ << (FORCELET $pred $tomatch (EQN $c $pat)) >> ] - -> [ [ (ELIMPRED $pred) - [ "let " [ (LETBINDER $pat) ] " =" - [1 1] [ $tomatch:L ] ] - [1 0] "in " [ $c:L ] ] ] -. - -- cgit v1.2.3