home *** CD-ROM | disk | FTP | other *** search
/ AmigActive 3 / AACD03.BIN / AACD / Programming / sofa / archive / SmallEiffel.lha / SmallEiffel / man / finder.txt < prev    next >
Text File  |  1999-06-05  |  3KB  |  75 lines

  1.  
  2.                              The finder command
  3.                                       
  4.    Usage
  5.    
  6.    finder [options] <Class>
  7.    
  8.    Command finder tells you which file is loaded when searching for an
  9.    Eiffel <Class>.
  10.    When an Eiffel file is found, finder prints the full path name on
  11.    standard output.
  12.    The exit status is set GENERAL.exit_success_code only when an existing
  13.    file is found (thus allowing usage of command finder in shell
  14.    scripts).
  15.    
  16.    To see the loading path used by SmallEiffel, you can for example type
  17.    the finder command using a bad (inexistant) class name. The default
  18.    loading path may be updated (see READ_ME file of the sys directory).
  19.    
  20.    When invoked without any argument, the finder command prints this
  21.    help.
  22.    
  23.    Options
  24.    
  25.    -version:
  26.           Show the number of the [1]version of SmallEiffel you're using.
  27.    -verbose:
  28.           Print system information during the compilation (full path of
  29.           loaded files, type inference score, removed files, etc.).
  30.           
  31.    Where does finder search ?
  32.    
  33.    The algorithm used by SmallEiffel to look for an Eiffel source file is
  34.    the following:
  35.    
  36.    1. Lower case filenames - SmallEiffel looks all along the loading path
  37.    using <class> name in lower case as tail. If needed, the Eiffel suffix
  38.    (".e") is added automatically. SmallEiffel only looks for suffixed
  39.    files on the disk. Only the first file encountered according to the
  40.    order of the path is taken in account. File is always supposed to have
  41.    the same name as the inside class definition.
  42.    
  43.    2. Renamed files - When the above search has failed to find a file,
  44.    SmallEiffel tries to search for files "rename.se" in all directories
  45.    of the path.
  46.    A file "rename.se" allows the user to put in file "foo" the class
  47.    "bar" for example.
  48.    Such renaming facilities has been added especially for DOS (file names
  49.    are limited to 8 characters).
  50.    Each line of a "rename.se" file is a renaming directive containing two
  51.    names, first the full name and then the short name to use in the
  52.    directory where the "rename.se" file is.
  53.    File "SmallEiffel/misc/rename.se" is an example of a "rename.se" file
  54.    to put in SmallEiffel/lib_std/ for DOS.
  55.    
  56.    Thus, knowing the algorithm of SmallEiffel to find a class file, it is
  57.    better not to use the renaming facilities to speed up class loading.
  58.    
  59.    3. Upper case filenames - Finally, when both previous steps did not
  60.    find the required Eiffel class file, SmallEiffel looks along the
  61.    loading path for a file bearing the class name upper in upper case
  62.    letters. If needed, the Eiffel suffix ".e" is added automatically.
  63.    One must note that the overhead to find an upper case file name is not
  64.    negligeable at all and that a lower case file name may hide some upper
  65.    case name.
  66.    
  67.                                    [Line]
  68.    Copyright © Dominique COLNET and Suzanne COLLIN - [2]<colnet@loria.fr>
  69.                   Last update: 05 June 1999, by DC & OZ. 
  70.  
  71. References
  72.  
  73.    1. file://localhost/home/colnet/SmallEiffel/man/man/SmallEiffelFAQ.html#Q02
  74.    2. mailto:colnet@loria.fr
  75.