pub trait InputOutput: Sized {
// Required methods
fn read(path: impl Into<PathBuf>) -> ApiResult<Self>;
fn read_json(path: PathBuf) -> ApiResult<Self>;
fn read_yaml(path: PathBuf) -> ApiResult<Self>;
fn write(&self, path: impl Into<PathBuf>) -> ApiResult<()>;
fn write_json(&self, path: impl Into<PathBuf>) -> ApiResult<()>;
fn write_yaml(&self, path: impl Into<PathBuf>) -> ApiResult<()>;
// Provided methods
fn read_cff(_path: impl Into<PathBuf>) -> ApiResult<Self> { ... }
fn read_jsonc(_path: PathBuf) -> ApiResult<Self> { ... }
fn read_markdown(_path: PathBuf) -> ApiResult<Self> { ... }
fn write_cff(&self, _path: impl Into<PathBuf>) -> ApiResult<()> { ... }
fn write_markdown(&self, _path: impl Into<PathBuf>) -> ApiResult<()> { ... }
}Expand description
Trait for I/O operations such as read and write
Required Methods§
Provided Methods§
Sourcefn read_jsonc(_path: PathBuf) -> ApiResult<Self>
fn read_jsonc(_path: PathBuf) -> ApiResult<Self>
Read data from specified JSONC file path
Sourcefn read_markdown(_path: PathBuf) -> ApiResult<Self>
fn read_markdown(_path: PathBuf) -> ApiResult<Self>
Read data as Markdown from specified path
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".
Implementors§
impl InputOutput for ApplicationConfiguration
impl InputOutput for Cff
Available on crate feature
std only.impl InputOutput for Config
impl InputOutput for acorn::schema::standard::dcat::Dataset
Available on crate feature
std only.impl InputOutput for acorn::schema::standard::huwise::Dataset
Available on crate feature
std only.impl InputOutput for Docx
Available on crate feature
std only.impl InputOutput for acorn::schema::standard::datacite::Record
Available on crate feature
std only.impl InputOutput for acorn::schema::standard::invenio::Record
Available on crate feature
std only.impl InputOutput for ResearchActivity
Available on crate feature
std only.impl InputOutput for Text
Available on crate feature
std only.