00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025 :- import (dynamic)/1,asserta/1 from assert.
00026
00027 :- import stat_flag/2, file_function/7, file_function/3,
00028 parse_filename/4, is_absolute_filename/1,
00029 expand_filename/2,
00030 sys_system/7, formatted_io/5
00031 from machine.
00032 %%%:- import conpsc/2, psc_set_type/2, psc_set_prop/2 from machine.
00033
00034 :- import for/3 from basics.
00035
00036 :- import abort/1, atom_codes/2, '\='/2, repeat/0, integer/1,
00037 file_exists/1, atom/1
00038 from standard.
00039
00040 %%%:- import gensym/2 from gensym.
00041
00042 :- import is_plain_file/1, is_directory/1, rename/2, rm/1, rmdir_rec/1, cwd/1,
00043 sys_filecopy/3,
00044 cd/1, sys_link/3, sys_mkdir/2, sys_rmdir/2, sys_access/3
00045 from shell.
00046
00047 :- import file_write/2 from xsb_writ.
00048
00049 :- import check_integer/3,
00050 domain_error/4,existence_error/4,
00051 permission_error/4 from error_handler.
00052
00053 :- export fmt_write_string/3, fmt_write/2, fmt_read/3,
00054 fmt_write/3, fmt_read/4,
00055 print_file_contents/1,
00056 print_file_contents/2,
00057 path_sysop/2, path_sysop/3,
00058 copyIOport/2,
00059 file_seek/4, file_truncate/3,
00060 file_pos/2, file_size/2, file_time/2,
00061 file_open/3, file_open/4, file_close/1, file_close/2,
00062 file_get/2, file_put/2,
00063 file_getbuf/4,
00064 file_getbuf_atom/4, file_getbuf_atom/3,
00065 file_getbuf_list/4, file_getbuf_list/3,
00066 file_putbuf/5, file_putbuf/4,
00067 file_write_line/2, file_write_line/3,
00068 file_read_line/2,
00069 file_read_line_atom/1, file_read_line_atom/2,
00070 file_read_line_list/1, file_read_line_list/2,
00071 file_reopen/4, file_clone/3,
00072 pipe_open/2, fd2ioport/2, fd2iostream/3,
00073 file_clearerr/1, tmpfile_open/1,
00074 print_openfiles/0, check_enumerate_stream_or_alias/4,
00075 check_stream_or_alias/4, check_open_stream_or_alias/5, add_alias/2,
00076 is_valid_stream/2, peek_code/1, peek_code/2, peek_char/1, peek_char/2,
00077 at_end_of_stream/1, at_end_of_stream/0, set_stream_position/2,
00078 xsb_stream_lock/1,xsb_stream_unlock/1.
00079
00080 % ISO predicates (sometimes rewrites of earlier predicates w. more checking).
00081 :- export stream_property/2, flush_output/1, flush_output/0.
00082
00083 % Obsolescent?
00084 :- export file_flush/2.