class FILE_SYS < $OPSYS_FILE_SYS
****

________This_class_provides_abstract_file_system_operations_using_the
___underlying_OS_primitives.__It_provides_an_intermediate_interface_between
___the_required_library_standard_functionality_and_the_underlying_operating
___system,_so_that_there_is_a_common_syntactic_interface_to_the_public
___routines_defined_in_this_class.
________This_version_is_defined_for_Posix_conformant_unix_implementations!
___Reference_should_be_made_to_Posix_specifications_for_further_detail.


Flattened version is here

Ancestors
$OPSYS_FILE_SYS



Public


Features
change_access(name : STR, access_mask : ACCESS_SET) : BOOL
****
__________and_~void(access_mask)___!_ACCESS_SET_is_immutable!!
change_owner(name : STR, owner : USER, which : GROUP) : BOOL
****
channel_read(cnt : CARD, chan : REFERENCE ) : FBINSTR
clearerr(fyle : REFERENCE)
close(fyle : REFERENCE)
close_dir( handle : REFERENCE ) : BOOL
close_throw_back(chan : REFERENCE)
create_file(name : STR, mode : FILE_MODES) : REFERENCE
create_tempfile : REFERENCE
current_dir( path : STR ) : BOOL
current_dir : STR
delete_dir(name : STR) : BOOL
delete_file(name : STR ) : BOOL
****
error(fyle : REFERENCE ) : BOOL
****
________This_predicate_returns_true_if_and_only_if_the_latest_file_operation
___resulted_in_an_error.
error_msg(fyle : REFERENCE ) : STR
exists(name : STR) : BOOL
****
________This_predicate_returns_true_if_and_only_if_the_named_file/directory
___actually_exists.
file_read(buff : $FSTRINGS, size : CARD, inout cnt : CARD, offset : CARD, fyle : REFERENCE) : BOOL
file_read(buff : $FSTRINGS, size : CARD, inout cnt : CARD, fyle : REFERENCE) : BOOL
file_type(name : STR, leaf_name : STR ) : STR
file_write( buff : REFERENCE, size : CARD, inout cnt : CARD, fyle : REFERENCE) : BOOL
file_write( buff : $STRINGS, size : CARD, inout cnt : CARD, fyle : REFERENCE) : BOOL
flush(fyle : REFERENCE)
flush(chan : REFERENCE, direction : FLUSH_CMDS )
get_label(name : STR, label : REFERENCE) : BOOL
getchar(out item : OCTET, chan : REFERENCE ) : BOOL
kind(code_val : CARD ) : FILE_KINDS
make_dir( name : STR, access_code : ACCESS_SET ) : BOOL
open(name : STR, mode : FILE_MODES) : REFERENCE
open_dir( name : STR ) : REFERENCE
open_throw_back : REFERENCE
position(fyle : REFERENCE ) : CARD
putchar(item : OCTET, chan : REFERENCE ) : BOOL
raw_open(name : STR) : REFERENCE
read_dir(handle : REFERENCE, inout offset : CARD) : STR
rename_dir( old_name, new_name : STR) : BOOL
rename_file(old_name : STR, new_name : STR ) : BOOL
****
rewind_dir(handle : REFERENCE, out offset : CARD): BOOL
seek(fyle : REFERENCE, offset : INT, relative_to : FILE_LOCS ) : BOOL
set_times(name : STR, utime, mtime : TIME_STAMP) : BOOL
****
set_type( full_name : STR, leaf_name : STR, new_type : STR) : STR
size(fyle : REFERENCE, out size : CARD) : BOOL
throw(chan : REFERENCE, fyle_ident : STR, msg : STR, warn_only : BOOL )


Private

const Line_Max : CARD := 1023 ;
**** unix max!
shared Mode_Names : ARRAY{STR} ;
shared Mode_Names : ARRAY{STR} ;
const Raw_Binary : CARD := UNICODE::LATIN_SMALL_LETTER_B.card ;
****
const Raw_Read : CARD := UNICODE::LATIN_SMALL_LETTER_R.card ;
check_modes
****
________This_routine_is_provided_to_read_the_mode_name_strings_if_this_has
___not_already_been_done.

The Sather Home Page