Diff for /gforth/kernel/require.fs between versions 1.26 and 1.32

version 1.26, 2003/01/22 10:59:55 version 1.32, 2006/12/31 13:39:19
Line 1 Line 1
 \ require.fs  \ require.fs
   
 \ Copyright (C) 1995,1996,1997,1998,2000 Free Software Foundation, Inc.  \ Copyright (C) 1995,1996,1997,1998,2000,2003,2006 Free Software Foundation, Inc.
   
 \ This file is part of Gforth.  \ This file is part of Gforth.
   
Line 72  create image-included-files 1 , A, ( poi Line 72  create image-included-files 1 , A, ( poi
     2/ cell / included-files 2!      2/ cell / included-files 2!
     2! ;      2! ;
   
 has? new-input [IF]  
 : included1 ( i*x file-id c-addr u -- j*x ) \ gforth  
     \G Include the file file-id with the name given by @var{c-addr u}.  
     save-mem 2dup add-included-file ( file-id )  
     ['] include-file2 catch  
     throw ;  
 [ELSE]  
 : included1 ( i*x file-id c-addr u -- j*x ) \ gforth  : included1 ( i*x file-id c-addr u -- j*x ) \ gforth
 \G Include the file file-id with the name given by @var{c-addr u}.  \G Include the file file-id with the name given by @var{c-addr u}.
     save-mem 2dup loadfilename>r      save-mem 2dup add-included-file
     add-included-file ( file-id )      includefilename 2@ 2>r 2dup includefilename 2!
     ['] include-file2 catch      ['] read-loop execute-parsing-named-file
     r>loadfilename      2r> includefilename 2! ;
     throw ;  
 [THEN]  
   
 : included ( i*x c-addr u -- j*x ) \ file  : included ( i*x c-addr u -- j*x ) \ file
     \G @code{include-file} the file whose name is given by the string      \G @code{include-file} the file whose name is given by the string
     \G @var{c-addr u}.      \G @var{c-addr u}.
     open-fpath-file throw included1 ;      open-fpath-file throw included1 ;
   
 : required ( i*x addr u -- j*x ) \ gforth  : required ( i*x addr u -- i*x ) \ gforth
     \G @code{include-file} the file with the name given by @var{addr      \G @code{include-file} the file with the name given by @var{addr
     \G u}, if it is not @code{included} (or @code{required})      \G u}, if it is not @code{included} (or @code{required})
     \G already. Currently this works by comparing the name of the file      \G already. Currently this works by comparing the name of the file

Removed from v.1.26  
changed lines
  Added in v.1.32


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