branch: externals/caml
commit 432e97209ba967cf7cc7ec508d66be57c9927b12
Author: Damien Doligez <damien.doligez-inria.fr>
Commit: Damien Doligez <damien.doligez-inria.fr>
duh
git-svn-id: http://caml.inria.fr/svn/ocaml/trunk@5741
f963ae5c-01c2-4b8c-9fe0-0dff7051ff02
---
caml-types.el | 26 +++++++++-----------------
1 file changed, 9 insertions(+), 17 deletions(-)
diff --git a/caml-types.el b/caml-types.el
index a89a041..b0f1e27 100644
--- a/caml-types.el
+++ b/caml-types.el
@@ -231,24 +231,16 @@ See `caml-types-location-re' for annotation file format.
; trouve le premier fils qui commence apres la position
; ou (length node) si tous commencent avant
-;(defun caml-types-search (node pos)
-; (let ((min 3)
-; (max (length node))
-; med)
-; (while (< min max)
-; (setq med (/ (+ min max) 2))
-; (if (caml-types-pos<= (elt (elt node med) 0) pos)
-; (setq min (1+ med))
-; (setq max med)))
-; min))
-
-; a remplacer par une dichotomie
(defun caml-types-search (node pos)
- (let ((i 3))
- (while (and (< i (length node))
- (caml-types-pos<= (elt (elt node i) 0) targ-pos))
- (setq i (1+ i)))
- i))
+ (let ((min 3)
+ (max (length node))
+ med)
+ (while (< min max)
+ (setq med (/ (+ min max) 2))
+ (if (caml-types-pos<= (elt (elt node med) 0) pos)
+ (setq min (1+ med))
+ (setq max med)))
+ min))
(defun caml-types-pos-inside (pos node)
(let ((left-pos (elt node 0))