123 lines
2.0 KiB
Plaintext
123 lines
2.0 KiB
Plaintext
|
|
||
|
:- import path_sysop/2, path_sysop/3 from file_io.
|
||
|
:- import datime/1 from standard.
|
||
|
|
||
|
|
||
|
:- object(system,
|
||
|
implements(systemp)).
|
||
|
|
||
|
|
||
|
:- info([
|
||
|
version is 1.0,
|
||
|
author is 'Paulo Moura',
|
||
|
date is 2004/6/5,
|
||
|
comment is 'Operating system interface for XSB.']).
|
||
|
|
||
|
|
||
|
make_directory(Directory) :-
|
||
|
{path_sysop(mkdir, Directory)}.
|
||
|
|
||
|
|
||
|
delete_directory(Directory) :-
|
||
|
{path_sysop(rmdir, Directory)}.
|
||
|
|
||
|
|
||
|
change_directory(Directory) :-
|
||
|
{path_sysop(chdir, Directory)}.
|
||
|
|
||
|
|
||
|
working_directory(Directory) :-
|
||
|
{path_sysop(cwd, Directory)}.
|
||
|
|
||
|
|
||
|
directory_exists(Directory) :-
|
||
|
{path_sysop(isdir, Directory)
|
||
|
path_sysop(exists, Directory)}.
|
||
|
|
||
|
|
||
|
directory_files(Directory, Files) :-
|
||
|
{directory(Directory, Files)}.
|
||
|
|
||
|
|
||
|
absolute_file_name(File) :-
|
||
|
{path_sysop(isabsolute, File)}.
|
||
|
|
||
|
|
||
|
absolute_file_name(File, Full) :-
|
||
|
{path_sysop(expand, File, Full)}.
|
||
|
|
||
|
|
||
|
file_base_name(File, Base) :-
|
||
|
{path_sysop(basename, File, Base)}.
|
||
|
|
||
|
|
||
|
file_name_extension(File, Extension) :-
|
||
|
{path_sysop(extension, File, Extension)}.
|
||
|
|
||
|
|
||
|
file_name_directory(File, Directory) :-
|
||
|
{path_sysop(dirname, File, Directory)}.
|
||
|
|
||
|
|
||
|
file_exists(File) :-
|
||
|
{path_sysop(isplain, File)
|
||
|
path_sysop(exists, File)}.
|
||
|
|
||
|
|
||
|
file_modification_time(File, Time) :-
|
||
|
{path_sysop(modtime, File, [High, Low]),
|
||
|
Time is Low + High * 2 ** 24}.
|
||
|
|
||
|
|
||
|
file_size(File, Size) :-
|
||
|
{path_sysop(size, File, Size)}.
|
||
|
|
||
|
|
||
|
file_permission(File, read) :-
|
||
|
{path_sysop(readable, File)}.
|
||
|
|
||
|
file_permission(File, write) :-
|
||
|
{path_sysop(writable, File)}.
|
||
|
|
||
|
file_permission(File, execute) :-
|
||
|
{path_sysop(executable, File)}.
|
||
|
|
||
|
|
||
|
delete_file(File) :-
|
||
|
{path_sysop(rm, Directory)}.
|
||
|
|
||
|
|
||
|
rename_file(Old, New) :-
|
||
|
{path_sysop(rename, Old, New)}.
|
||
|
|
||
|
|
||
|
symbolic_link(File, Target) :-
|
||
|
{fail}.
|
||
|
|
||
|
|
||
|
environment_variable(Variable, Value) :-
|
||
|
{fail}.
|
||
|
|
||
|
|
||
|
set_environment_variable(Variable, Value) :-
|
||
|
{fail}.
|
||
|
|
||
|
|
||
|
date_time(Year, Month, Day, Hours, Mins, Secs, 0) :-
|
||
|
{datime(datime(Year, Month, Day, Hours, Mins, Secs))}.
|
||
|
|
||
|
|
||
|
convert_time(Time, Year, Month, Day, Hours, Mins, Secs) :-
|
||
|
{fail}.
|
||
|
|
||
|
|
||
|
cpu_time(Time) :-
|
||
|
{cputime(Time)}.
|
||
|
|
||
|
|
||
|
host_name(Name) :-
|
||
|
{fail}.
|
||
|
|
||
|
|
||
|
:- end_object.
|