Struct Ssml

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

Holds parsed SSML string with the text minus tags and the tag information

Implementations§

Source§

impl Ssml

Source

pub fn get_text(&self) -> &str

Gets a version of the text with all the SSML tags stripped

Source

pub fn get_text_from_span(&self, span: &Span) -> &str

From a given span with start/end characters return the text within that span.

§Panics

Will panic if span exceeds the bounds of the text.

Source

pub fn tags(&self) -> impl Iterator<Item = &Span>

Get an iterator over the SSML tags - traversed depth first.

Source

pub fn write_ssml(&self) -> String

Write out the SSML text again - mainly used for testing correctness of implementation.

Source

pub fn write_ssml_with_transform<F>(&self, f: F) -> TransformedSsml

For each parser event to write out apply a transformation to it or return None if it should be filtered out. It is up to the implementor to make sure that if an open tag is removed the corresponding close tag is removed as well.

TODO this doesn’t track if there are tags where inner text shouldn’t be synthesised so certain transformations will lead to synthesisable_text being incorrect.

Source

pub fn event_iter(&self) -> impl Iterator<Item = ParserEvent> + '_

Turns the SSML document into a stream of events with open/close tags, text and empty elements. This will not filter out text that shouldn’t be synthesised so it’s on the user to keep track of this.

Trait Implementations§

Source§

impl Clone for Ssml

Source§

fn clone(&self) -> Ssml

Returns a copy of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for Ssml

Source§

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

Formats the value using the given formatter. Read more

Auto Trait Implementations§

§

impl Freeze for Ssml

§

impl RefUnwindSafe for Ssml

§

impl Send for Ssml

§

impl Sync for Ssml

§

impl Unpin for Ssml

§

impl UnwindSafe for Ssml

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> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. 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> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
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.