Diff for /gforth/hash.fs between versions 1.13 and 1.15

version 1.13, 1996/05/09 18:12:59 version 1.15, 1996/07/16 20:57:10
Line 59  Variable HashIndex Line 59  Variable HashIndex
 : lastlink! ( addr link -- )  : lastlink! ( addr link -- )
   BEGIN  dup @ dup  WHILE  nip  REPEAT  drop ! ;    BEGIN  dup @ dup  WHILE  nip  REPEAT  drop ! ;
   
 : (reveal ( addr voc -- )  : (reveal ( nfa wid -- )
     dup wordlist-extend @ 0<      dup wordlist-extend @ 0<
     IF      IF
         2drop EXIT          2drop EXIT
Line 74  Variable HashIndex Line 74  Variable HashIndex
     THEN      THEN
     revealed on ;      revealed on ;
   
 : hash-reveal ( -- )  : hash-reveal ( nfa wid -- )
     (reveal) last?      2dup (reveal) (reveal ;
     IF  
         current @ (reveal  
     THEN ;  
   
 : addall  ( -- )  : addall  ( -- )
     voclink      voclink
Line 87  Variable HashIndex Line 84  Variable HashIndex
 : clearhash  ( -- )  : clearhash  ( -- )
     HashTable Hashlen cells bounds      HashTable Hashlen cells bounds
     DO  I @      DO  I @
         BEGIN  dup  WHILE          BEGIN  dup  WHILE
                dup @ swap HashPointer DelFix                 dup @ swap HashPointer DelFix
         REPEAT  I !          REPEAT  I !
     cell +LOOP  HashIndex off ;      cell +LOOP  HashIndex off ;
   
Line 113  Create hashsearch-map ( -- wordlist-map Line 110  Create hashsearch-map ( -- wordlist-map
   THEN ;    THEN ;
   
 : (initvoc) ( addr -- )  : (initvoc) ( addr -- )
     cell+ dup @ 0< IF  drop EXIT  THEN      cell+ dup @  0< IF  drop EXIT  THEN
     insRule @ >r  insRule off  hash-alloc      insRule @ >r  insRule off  hash-alloc
     3 cells - hashsearch-map over cell+ ! dup      3 cells - hashsearch-map over cell+ ! dup
     BEGIN  @ dup  WHILE  2dup swap (reveal  REPEAT      BEGIN  @ dup  WHILE  2dup swap (reveal  REPEAT

Removed from v.1.13  
changed lines
  Added in v.1.15


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>