Current section

Files

Jump to
ftpasta src ftpasta internal.gleam
Raw

src/ftpasta/internal.gleam

import ftpasta/ftp_error.{type FTPError}
import ftpasta/tls_config.{type TLSConfig}
import gleam/erlang/process.{type Pid}
@external(erlang, "ftpasta_ffi", "append")
pub fn append(
pid: Pid,
local_file_name: String,
remote_file_name: String,
) -> Result(Nil, FTPError)
@external(erlang, "ftpasta_ffi", "append_bin")
pub fn append_bin(
pid: Pid,
bin: BitArray,
remote_file_name: String,
) -> Result(Nil, FTPError)
@external(erlang, "ftpasta_ffi", "cd")
pub fn cd(pid: Pid, dir: String) -> Result(Nil, FTPError)
@external(erlang, "ftpasta_ffi", "close")
pub fn close(pid: Pid) -> Nil
@external(erlang, "ftpasta_ffi", "delete")
pub fn delete(pid: Pid, file: String) -> Result(Nil, FTPError)
@external(erlang, "ftpasta_ffi", "formaterror")
pub fn formaterror(error: FTPError) -> String
@external(erlang, "ftpasta_ffi", "lcd")
pub fn lcd(pid: Pid, dir: String) -> Result(Nil, FTPError)
@external(erlang, "ftpasta_ffi", "lpwd")
pub fn lpwd(pid: Pid) -> String
@external(erlang, "ftpasta_ffi", "ls")
pub fn ls(pid: Pid, dir: String) -> Result(String, FTPError)
@external(erlang, "ftpasta_ffi", "mkdir")
pub fn mkdir(pid: Pid, dir: String) -> Result(Nil, FTPError)
@external(erlang, "ftpasta_ffi", "nlist")
pub fn nlist(pid: Pid, dir: String) -> Result(String, FTPError)
@external(erlang, "ftpasta_ffi", "open")
pub fn open(
host: String,
port: Int,
tls: TLSConfig,
verify: Bool,
) -> Result(Pid, FTPError)
@external(erlang, "ftpasta_ffi", "pwd")
pub fn pwd(pid: Pid) -> Result(String, FTPError)
@external(erlang, "ftpasta_ffi", "recv")
pub fn recv(
pid: Pid,
remote_file_name: String,
local_file_name: String,
) -> Result(Nil, FTPError)
@external(erlang, "ftpasta_ffi", "recv_bin")
pub fn recv_bin(
pid: Pid,
remote_file_name: String,
) -> Result(BitArray, FTPError)
@external(erlang, "ftpasta_ffi", "rename")
pub fn rename(pid: Pid, old: String, new: String) -> Result(Nil, FTPError)
@external(erlang, "ftpasta_ffi", "rmdir")
pub fn rmdir(pid: Pid, dir: String) -> Result(Nil, FTPError)
@external(erlang, "ftpasta_ffi", "send")
pub fn send(
pid: Pid,
local_file_name: String,
remote_file_name: String,
) -> Result(Nil, FTPError)
@external(erlang, "ftpasta_ffi", "send_bin")
pub fn send_bin(
pid: Pid,
bin: BitArray,
remote_file_name: String,
) -> Result(Nil, FTPError)
@external(erlang, "ftpasta_ffi", "user")
pub fn user(pid: Pid, user: String, pass: String) -> Result(Nil, FTPError)