file_io.H

00001 /* File:      file_io.H
00002 ** Author(s): kifer
00003 ** Contact:   xsb-contact@cs.sunysb.edu
00004 ** 
00005 ** Copyright (C) The Research Foundation of SUNY, 1999
00006 ** 
00007 ** XSB is free software; you can redistribute it and/or modify it under the
00008 ** terms of the GNU Library General Public License as published by the Free
00009 ** Software Foundation; either version 2 of the License, or (at your option)
00010 ** any later version.
00011 ** 
00012 ** XSB is distributed in the hope that it will be useful, but WITHOUT ANY
00013 ** WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
00014 ** FOR A PARTICULAR PURPOSE.  See the GNU Library General Public License for
00015 ** more details.
00016 ** 
00017 ** You should have received a copy of the GNU Library General Public License
00018 ** along with XSB; if not, write to the Free Software Foundation,
00019 ** Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
00020 **
00021 ** $Id: file_io.H,v 1.34 2005/12/31 01:47:37 tswift Exp $
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.

Generated on Wed Jul 26 13:30:47 2006 for XSB by  doxygen 1.4.5