From 1e6e8fa0886d355dce352f00a907878609d3d69b Mon Sep 17 00:00:00 2001 From: "Committo,Ergo:sum" <esj@rezo.net> Date: Sat, 2 Jul 2005 08:22:41 +0000 Subject: [PATCH] =?UTF-8?q?explicitation=20des=20criteres=20dans=20le=20de?= =?UTF-8?q?busqueur=20+=20bon=20corps=20des=20r=C3=A9cursives?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ecrire/inc_debug_sql.php3 | 17 ++++++++--------- inc-compilo.php3 | 12 +++++++----- inc-html-squel.php3 | 2 +- 3 files changed, 16 insertions(+), 15 deletions(-) diff --git a/ecrire/inc_debug_sql.php3 b/ecrire/inc_debug_sql.php3 index 91ea0c02ec..49a04a553a 100644 --- a/ecrire/inc_debug_sql.php3 +++ b/ecrire/inc_debug_sql.php3 @@ -170,11 +170,10 @@ function debug_sequence($id, $nom, $niv, $sequence) { } // appelee a chaque compilation de boucle (inc-compilo) -function boucle_debug_compile ($id, $nom, $pretty, $sourcefile, $code) { +function boucle_debug_compile ($id, $nom, $code) { global $debug_objets; $debug_objets['code'][$nom.$id] = $code; - $debug_objets['pretty'][$nom.$id] = $pretty; } // appelee a chaque compilation de squelette (inc-compilo) @@ -193,21 +192,21 @@ function squelette_debug_compile($nom, $sourcefile, $code, $squelette) { } } -// appelee a chaque analyse syntaxique de squelette (inc-parser) +// appelee a chaque analyse syntaxique de squelette function boucle_debug ($nom, $id_parent, $id, $type, $crit, $avant, $milieu, $apres, $altern) { global $debug_objets; - $debug_objets['courant'] = $nom; $debug_objets['parent'][$nom.$id] = $id_parent; + $debug_objets['pretty'][$nom.$id] = + "BOUCLE$id($type)" . ereg_replace("[\r\n]", " ", $crit) ; // on synthetise avec la syntaxe standard, mais "<//" pose pb $debug_objets['boucle'][$nom.$id] = - "<B$id>" . - $avant . "<BOUCLE$id($type)" . $crit . - '>' . + (!$avant ? "" : "<B$id>$avant") . + "<BOUCLE$id($type)$crit>" . $milieu . "</BOUCLE$id>" . - $apres . "</B$id>" . - $altern . '<//B' . $id . ">"; + (!$apres ? "" : "$apres</B$id>") . + (!$altern ? "" : "$altern<//B$id>"); } function trouve_boucle_debug($n, $nom, $debut=0, $boucle = "") diff --git a/inc-compilo.php3 b/inc-compilo.php3 index c4bc4692be..b53fa8fd62 100644 --- a/inc-compilo.php3 +++ b/inc-compilo.php3 @@ -491,7 +491,7 @@ function compile_cas($tableau, $descr, &$boucles, $id_boucle='') { // affichage du code produit -function code_boucle(&$boucles, $id, $nom, $sourcefile) +function code_boucle(&$boucles, $id, $nom) { $boucle = &$boucles[$id]; @@ -525,8 +525,6 @@ function code_boucle(&$boucles, $id, $nom, $sourcefile) $pretty = "BOUCLE$id(".strtoupper($boucle->type_requete) . ")" . ereg_replace("[\r\n]", " ", $pretty); - if ($GLOBALS['var_mode'] == 'debug') - boucle_debug_compile ($id, $nom, $pretty, $sourcefile,$boucle->return); return $pretty; } @@ -632,12 +630,16 @@ function calculer_squelette($squelette, $nom, $gram, $sourcefile) { '(&$Cache, &$Pile, &$doublons, &$Numrows, $SP) {' . $f($id, $boucles) . "\n}\n\n"; + if ($GLOBALS['var_mode'] == 'debug') + boucle_debug_compile ($id, $nom, $boucles[$id]->return); + } $code = ""; foreach($boucles as $id => $boucle) { - $code .= "\n//\n// <" . - code_boucle($boucles, $id, $nom, $sourcefile). + $code .= "\n//\n// <BOUCLE " . +# code_boucle($boucles, $id, $nom). # pas au point + $boucle->type_requete . ">\n//\n" . $boucle->return; } diff --git a/inc-html-squel.php3 b/inc-html-squel.php3 index 0dd84265a2..c86aafe32c 100644 --- a/inc-html-squel.php3 +++ b/inc-html-squel.php3 @@ -502,7 +502,7 @@ function phraser($texte, $id_parent, &$boucles, $nom, $ligne=1) { if (substr($soustype, 0, 6) == TYPE_RECURSIF) { $result->type_requete = TYPE_RECURSIF; $result->param[0] = substr($soustype, strlen(TYPE_RECURSIF)); - $milieu = substr($milieu, strpos($milieu, '>')); + $milieu = substr($milieu, strpos($milieu, '>')+1); $params = ""; } else { $result->type_requete = $soustype; -- GitLab