-module(gleeam_code@internal@file).
-compile([no_auto_import, nowarn_unused_vars, nowarn_unused_function, nowarn_nomatch, inline]).
-define(FILEPATH, "src/gleeam_code/internal/file.gleam").
-export([describe_error/1, read/1, write/2, mkdir/1, make_directory/1, delete/1, remove_directory/1, exists/1, dir_exists/1, list_directory/1]).
-if(?OTP_RELEASE >= 27).
-define(MODULEDOC(Str), -moduledoc(Str)).
-define(DOC(Str), -doc(Str)).
-else.
-define(MODULEDOC(Str), -compile([])).
-define(DOC(Str), -compile([])).
-endif.
?MODULEDOC(false).
-file("src/gleeam_code/internal/file.gleam", 54).
?DOC(false).
-spec describe_error(gleam@erlang@atom:atom_()) -> binary().
describe_error(Error) ->
erlang:atom_to_binary(Error).
-file("src/gleeam_code/internal/file.gleam", 9).
?DOC(false).
-spec read(binary()) -> {ok, binary()} | {error, gleam@erlang@atom:atom_()}.
read(Path) ->
file:read_file(Path).
-file("src/gleeam_code/internal/file.gleam", 14).
?DOC(false).
-spec write(binary(), binary()) -> {ok, nil} |
{error, gleam@erlang@atom:atom_()}.
write(Path, Contents) ->
gleeam_code_file_ffi:write_file(Path, Contents).
-file("src/gleeam_code/internal/file.gleam", 19).
?DOC(false).
-spec mkdir(binary()) -> {ok, nil} | {error, gleam@erlang@atom:atom_()}.
mkdir(Path) ->
gleeam_code_file_ffi:ensure_dir(<<Path/binary, "/."/utf8>>).
-file("src/gleeam_code/internal/file.gleam", 24).
?DOC(false).
-spec make_directory(binary()) -> {ok, nil} | {error, gleam@erlang@atom:atom_()}.
make_directory(Path) ->
gleeam_code_file_ffi:make_dir(Path).
-file("src/gleeam_code/internal/file.gleam", 44).
?DOC(false).
-spec delete(binary()) -> {ok, nil} | {error, gleam@erlang@atom:atom_()}.
delete(Path) ->
gleeam_code_file_ffi:delete_file(Path).
-file("src/gleeam_code/internal/file.gleam", 49).
?DOC(false).
-spec remove_directory(binary()) -> {ok, nil} |
{error, gleam@erlang@atom:atom_()}.
remove_directory(Path) ->
gleeam_code_file_ffi:delete_dir(Path).
-file("src/gleeam_code/internal/file.gleam", 29).
?DOC(false).
-spec exists(binary()) -> boolean().
exists(Path) ->
filelib:is_regular(Path).
-file("src/gleeam_code/internal/file.gleam", 34).
?DOC(false).
-spec dir_exists(binary()) -> boolean().
dir_exists(Path) ->
filelib:is_dir(Path).
-file("src/gleeam_code/internal/file.gleam", 39).
?DOC(false).
-spec list_directory(binary()) -> {ok, list(binary())} |
{error, gleam@erlang@atom:atom_()}.
list_directory(Path) ->
gleeam_code_file_ffi:list_dir(Path).