-module(mist@file). -compile(no_auto_import). -export([size/1, uri_unquote/1, sendfile/5, open/1]). -export_type([file_descriptor/0, file_mode/0]). -type file_descriptor() :: any(). -type file_mode() :: raw. -spec size(bitstring()) -> integer(). size(A) -> filelib:file_size(A). -spec uri_unquote(binary()) -> binary(). uri_unquote(A) -> uri_string:unquote(A). -spec sendfile( file_descriptor(), glisten@tcp:socket(), integer(), integer(), list(any()) ) -> {ok, integer()} | {error, gleam@erlang@atom:atom_()}. sendfile(A, B, C, D, E) -> file:sendfile(A, B, C, D, E). -spec open(bitstring()) -> {ok, file_descriptor()} | {error, gleam@erlang@atom:atom_()}. open(File) -> file:open(File, [raw]).