Jido. VFS. Adapter behaviour
(Jido.VFS v1.0.0)
View Source
Behaviour for how Jido.VFS adapters work.
Summary
Types
Callbacks
@callback append(config(), path(), contents :: iodata(), write_opts()) :: :ok | {:error, term()}
@callback copy(config(), source :: path(), destination :: path(), write_opts()) :: :ok | {:error, term()}
@callback create_directory(config(), path(), write_opts()) :: :ok | {:error, term()}
@callback delete_directory(config(), path(), directory_delete_opts()) :: :ok | {:error, term()}
@callback move(config(), source :: path(), destination :: path(), write_opts()) :: :ok | {:error, term()}
@callback read_stream(config(), path(), stream_opts()) :: {:ok, Enumerable.t()} | {:error, term()}
@callback set_visibility(config(), path(), Jido.VFS.Visibility.t()) :: :ok | {:error, term()}
@callback starts_processes() :: boolean()
@callback truncate(config(), path(), new_size :: non_neg_integer()) :: :ok | {:error, term()}
@callback unsupported_operations() :: [atom()]
@callback utime(config(), path(), mtime :: DateTime.t()) :: :ok | {:error, term()}
@callback versioning_module() :: versioning_module() | nil
@callback visibility(config(), path()) :: {:ok, Jido.VFS.Visibility.t()} | {:error, term()}
@callback write(config(), path(), contents :: iodata(), write_opts()) :: :ok | {:error, term()}
@callback write_stream(config(), path(), stream_opts()) :: {:ok, Collectable.t()} | {:error, term()}