Model

Struct Model 

Source
pub struct Model { /* private fields */ }
Expand description

UDPipe model wrapper.

This is the main type for loading and using UDPipe models. Models can be loaded from files or from memory.

Implementations§

Source§

impl Model

Source

pub fn load(path: impl AsRef<Path>) -> Result<Self, UdpipeError>

Load a model from a file path.

§Errors

Returns an error if the path contains a null byte or if the model cannot be loaded.

§Example
use udpipe_rs::Model;
let model = Model::load("english-ewt-ud-2.5-191206.udpipe").expect("Failed to load model");
Source

pub fn load_from_memory(data: &[u8]) -> Result<Self, UdpipeError>

Load a model from a byte slice.

This is useful for loading models from network sources or embedded data.

§Errors

Returns an error if the data is empty or not a valid UDPipe model.

§Example
use udpipe_rs::Model;
let model_data = std::fs::read("english-ewt-ud-2.5-191206.udpipe").expect("Failed to read model");
let model = Model::load_from_memory(&model_data).expect("Failed to load model");
Source

pub fn parse(&self, text: &str) -> Result<Vec<Word>, UdpipeError>

Parse text and return all words with their UD annotations.

The text is tokenized, tagged, lemmatized, and parsed for dependencies.

§Errors

Returns an error if the text contains a null byte or if parsing fails.

§Example
use udpipe_rs::Model;
let model = Model::load("english-ewt-ud-2.5-191206.udpipe").expect("Failed to load");
let words = model.parse("The quick brown fox.").expect("Failed to parse");
for word in words {
    println!("{} -> {} ({})", word.form, word.lemma, word.upostag);
}

Trait Implementations§

Source§

impl Debug for Model

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Drop for Model

Source§

fn drop(&mut self)

Executes the destructor for this type. Read more
Source§

impl Send for Model

Source§

impl Sync for Model

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.