Trait taplo_common::environment::Environment
source · [−]pub trait Environment: Clone + Send + Sync + 'static {
type Stdin: AsyncRead + Unpin;
type Stdout: AsyncWrite + Unpin;
type Stderr: AsyncWrite + Unpin;
Show 19 methods
fn now(&self) -> OffsetDateTime;
fn spawn<F>(&self, fut: F)
where
F: Future + Send + 'static,
F::Output: Send;
fn spawn_local<F>(&self, fut: F)
where
F: Future + 'static;
fn env_var(&self, name: &str) -> Option<String>;
fn atty_stderr(&self) -> bool;
fn stdin(&self) -> Self::Stdin;
fn stdout(&self) -> Self::Stdout;
fn stderr(&self) -> Self::Stderr;
fn glob_files(&self, glob: &str) -> Result<Vec<PathBuf>, Error>;
fn read_file<'life0, 'life1, 'async_trait>(
&'life0 self,
path: &'life1 Path
) -> Pin<Box<dyn Future<Output = Result<Vec<u8>, Error>> + 'async_trait>>
where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait;
fn write_file<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
path: &'life1 Path,
bytes: &'life2 [u8]
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + 'async_trait>>
where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Self: 'async_trait;
fn to_file_path(&self, url: &Url) -> Option<PathBuf>;
fn is_absolute(&self, path: &Path) -> bool;
fn cwd(&self) -> Option<PathBuf>;
fn find_config_file<'life0, 'life1, 'async_trait>(
&'life0 self,
from: &'life1 Path
) -> Pin<Box<dyn Future<Output = Option<PathBuf>> + 'async_trait>>
where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait;
fn glob_files_normalized(&self, glob: &str) -> Result<Vec<PathBuf>, Error> { ... }
fn cwd_normalized(&self) -> Option<PathBuf> { ... }
fn to_file_path_normalized(&self, url: &Url) -> Option<PathBuf> { ... }
fn find_config_file_normalized<'life0, 'life1, 'async_trait>(
&'life0 self,
from: &'life1 Path
) -> Pin<Box<dyn Future<Output = Option<PathBuf>> + 'async_trait>>
where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
{ ... }
}
Expand description
An environment in which the operations with Taplo are executed.
This is mostly needed for sandboxed environments such as WebAssembly.
Required Associated Types
type Stdout: AsyncWrite + Unpin
type Stderr: AsyncWrite + Unpin
Required Methods
fn now(&self) -> OffsetDateTime
fn spawn_local<F>(&self, fut: F) where
F: Future + 'static,
fn atty_stderr(&self) -> bool
fn read_file<'life0, 'life1, 'async_trait>(
&'life0 self,
path: &'life1 Path
) -> Pin<Box<dyn Future<Output = Result<Vec<u8>, Error>> + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn write_file<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
path: &'life1 Path,
bytes: &'life2 [u8]
) -> Pin<Box<dyn Future<Output = Result<(), Error>> + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Self: 'async_trait,
fn to_file_path(&self, url: &Url) -> Option<PathBuf>
fn is_absolute(&self, path: &Path) -> bool
Provided Methods
Same as Self::glob_files
, but the returned paths are
normalized in addition.
fn cwd_normalized(&self) -> Option<PathBuf>
fn cwd_normalized(&self) -> Option<PathBuf>
Same as Self::cwd
, but the returned path is
normalized in addition.
fn to_file_path_normalized(&self, url: &Url) -> Option<PathBuf>
fn to_file_path_normalized(&self, url: &Url) -> Option<PathBuf>
Same as Self::to_file_path
, but the returned path is
normalized in addition.
Same as Self::find_config_file
, but the returned path is
normalized in addition.