use crate::{
Result, Rudof,
api::prefixes::implementations::{add_prefix, copy_prefix, prefixes, remove_prefix, rename_prefix},
};
use prefixmap::PrefixMap;
pub trait PrefixesOperations {
fn prefixes(&self) -> PrefixMap;
fn add_prefix(&mut self, alias: &str, iri: &str) -> Result<()>;
fn remove_prefix(&mut self, alias: &str) -> Result<()>;
fn rename_prefix(&mut self, old_alias: &str, new_alias: &str) -> Result<()>;
fn copy_prefix(&mut self, old_alias: &str, new_alias: &str) -> Result<()>;
}
impl PrefixesOperations for Rudof {
fn prefixes(&self) -> PrefixMap {
prefixes(self)
}
fn add_prefix(&mut self, alias: &str, iri: &str) -> Result<()> {
add_prefix(self, alias, iri)
}
fn remove_prefix(&mut self, alias: &str) -> Result<()> {
remove_prefix(self, alias)
}
fn rename_prefix(&mut self, old_alias: &str, new_alias: &str) -> Result<()> {
rename_prefix(self, old_alias, new_alias)
}
fn copy_prefix(&mut self, old_alias: &str, new_alias: &str) -> Result<()> {
copy_prefix(self, old_alias, new_alias)
}
}