home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / mitsch75.zip / scheme-7_5_17-src.zip / scheme-7.5.17 / src / microcode / osfs.h < prev    next >
C/C++ Source or Header  |  2001-05-08  |  3KB  |  72 lines

  1. /* -*-C-*-
  2.  
  3. $Id: osfs.h,v 1.10 2001/05/09 03:15:05 cph Exp $
  4.  
  5. Copyright (c) 1990-2001 Massachusetts Institute of Technology
  6.  
  7. This program is free software; you can redistribute it and/or modify
  8. it under the terms of the GNU General Public License as published by
  9. the Free Software Foundation; either version 2 of the License, or (at
  10. your option) any later version.
  11.  
  12. This program is distributed in the hope that it will be useful, but
  13. WITHOUT ANY WARRANTY; without even the implied warranty of
  14. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  15. General Public License for more details.
  16.  
  17. You should have received a copy of the GNU General Public License
  18. along with this program; if not, write to the Free Software
  19. Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
  20. USA.
  21. */
  22.  
  23. #ifndef SCM_OSFS_H
  24. #define SCM_OSFS_H
  25.  
  26. #include "os.h"
  27.  
  28. enum file_existence { file_does_exist, file_doesnt_exist, file_is_link };
  29.  
  30. enum file_type
  31. {
  32.   file_type_nonexistent = (-1),
  33.   file_type_regular = 0,
  34.   file_type_directory,
  35.   file_type_unix_symbolic_link,
  36.   file_type_unix_character_device,
  37.   file_type_unix_block_device,
  38.   file_type_unix_fifo,
  39.   file_type_unix_stream_socket,
  40.   file_type_os2_named_pipe,
  41.   file_type_win32_named_pipe,
  42.   file_type_unknown = 0xFFFF
  43. };
  44.  
  45. extern enum file_existence EXFUN (OS_file_existence_test, (CONST char * name));
  46. extern enum file_existence EXFUN
  47.   (OS_file_existence_test_direct, (CONST char * name));
  48. extern enum file_type EXFUN (OS_file_type_direct, (CONST char *));
  49. extern enum file_type EXFUN (OS_file_type_indirect, (CONST char *));
  50. extern int EXFUN (OS_file_access, (CONST char * name, unsigned int mode));
  51. extern int EXFUN (OS_file_directory_p, (CONST char * name));
  52. extern CONST char * EXFUN (OS_file_soft_link_p, (CONST char * name));
  53. extern void EXFUN (OS_file_remove, (CONST char * name));
  54. extern void EXFUN (OS_file_remove_link, (CONST char * name));
  55. extern void EXFUN
  56.   (OS_file_rename, (CONST char * from_name, CONST char * to_name));
  57. extern void EXFUN
  58.   (OS_file_link_hard, (CONST char * from_name, CONST char * to_name));
  59. extern void EXFUN
  60.   (OS_file_link_soft, (CONST char * from_name, CONST char * to_name));
  61. extern void EXFUN (OS_directory_make, (CONST char * name));
  62. extern void EXFUN (OS_directory_delete, (CONST char * name));
  63. extern int EXFUN (OS_file_touch, (CONST char *));
  64. extern unsigned int EXFUN (OS_directory_open, (CONST char * name));
  65. extern int EXFUN (OS_directory_valid_p, (long index));
  66. extern void EXFUN (OS_directory_close, (unsigned int index));
  67. extern CONST char * EXFUN (OS_directory_read, (unsigned int index));
  68. extern CONST char * EXFUN
  69.   (OS_directory_read_matching, (unsigned int index, CONST char * prefix));
  70.  
  71. #endif /* SCM_OSFS_H */
  72.