[ Home Page ] [ Eiffel Archive ] [ Eiffel Classes and Clusters]
![]() |
Unix File/Directory Handling Cluster |
Written by Friedrich Dominicus.
Version 0.2
fdh_0-2.tgz (27,594 bytes) - source code
Friedrich.Dominicus@inka.deFriedrich Dominicus (maintainer) mail address.
You need one of the following compilers: ISE Eiffel (version > 3.3.7 should do the job) Halstenbach Eiffel (Version 3.0) SmallEiffel -0.78 (because just from there on defined for EIF_{INTEGER,CHARACTER, etc} are available in runtime/sys/base.h Visual Eiffel for Linux (v. 2.96beta), please check if cecil.h is included in your version. This is needed for interfacing Eiffel-C with Visual Eiffel.
The classes are just wrappers around C-POSIX calls so your platform better support POSIX;-) We will adapt the classes such that one can use them on Window Platforms too. But it should work at least for all Unices. Ports to other platforms are not planned at the moment. BTW it's not easy to get other Operating Systems like VMS etc which one need to do the port. But if someone finds the classes useful he/she may port it him/herself.
I mainly the information from Advanced Programming in the Unix Environment from Richard Stevens, which unfortunatly died too young (AFAIK just 48 years old) a month or so ago. If you found his book as good as I've found them you may search for what he's last will was and spend some money on it.
The chapter which was used for this classes is Number 4.
Features used with interfacing to/from C are prefixed with c_ Maybe this had to be changed because c_ is reserved for future use by some Posix library.
If there is a C type in special notation it will be reflected in the name even on the Eiffel-side (e.g c_dir_ptr). This is somewhat like hungarian notation but because I'm using EIF_POINTER all around, which is in fact just a void*-pointer, so generic as can be, this should remind me of handing over the right parameter and insert the appropriate conversions.
char* should be encoded as str. I hope I've done it in all cases to be consistent.
[ Home Page ] [ Eiffel Archive ] [ Eiffel Classes and Clusters]