pub struct Speak<'s> { /* private fields */ }
Expand description
The root element of an SSML document.
Implementations§
Source§impl<'s> Speak<'s>
impl<'s> Speak<'s>
Sourcepub fn new<S: Into<Element<'s>>, I: IntoIterator<Item = S>>(
lang: Option<&'s str>,
elements: I,
) -> Self
pub fn new<S: Into<Element<'s>>, I: IntoIterator<Item = S>>( lang: Option<&'s str>, elements: I, ) -> Self
Creates a new SSML document with elements.
lang
specifies the language of the spoken text contained within the document, e.g. en-US
. It is required for
ACSS and will throw an error if not provided.
let doc = ssml::speak(Some("en-US"), ["Hello, world!"]);
pub fn with_start_mark(self, mark: impl Into<Cow<'s, str>>) -> Self
pub fn start_mark(&self) -> Option<&str>
pub fn set_start_mark(&mut self, mark: impl Into<Cow<'s, str>>)
pub fn take_start_mark(&mut self) -> Option<Cow<'s, str>>
pub fn with_end_mark(self, mark: impl Into<Cow<'s, str>>) -> Self
pub fn end_mark(&self) -> Option<&str>
pub fn set_end_mark(&mut self, mark: impl Into<Cow<'s, str>>)
pub fn take_end_mark(&mut self) -> Option<Cow<'s, str>>
Sourcepub fn push(&mut self, element: impl Into<Element<'s>>)
pub fn push(&mut self, element: impl Into<Element<'s>>)
Extend this SSML document with an additional element.
let mut doc = ssml::speak(Some("en-US"), ["Hello, world!"]);
doc.push("This is an SSML document.");
assert_eq!(
doc.serialize_to_string(&ssml::SerializeOptions::default().pretty())?,
r#"<speak version="1.0" xmlns="http://www.w3.org/2001/10/synthesis" xml:lang="en-US">
Hello, world!
This is an SSML document.
</speak>"#
);
Sourcepub fn extend<S: Into<Element<'s>>, I: IntoIterator<Item = S>>(
&mut self,
elements: I,
)
pub fn extend<S: Into<Element<'s>>, I: IntoIterator<Item = S>>( &mut self, elements: I, )
Extend this SSML document with additional elements.
let mut doc = ssml::speak(Some("en-US"), ["Hello, world!"]);
doc.extend(["This is an SSML document."]);
assert_eq!(
doc.serialize_to_string(&ssml::SerializeOptions::default().pretty())?,
r#"<speak version="1.0" xmlns="http://www.w3.org/2001/10/synthesis" xml:lang="en-US">
Hello, world!
This is an SSML document.
</speak>"#
);
Sourcepub fn children(&self) -> &[Element<'s>]
pub fn children(&self) -> &[Element<'s>]
Returns a reference to the document’s direct children.
Sourcepub fn children_mut(&mut self) -> &mut Vec<Element<'s>>
pub fn children_mut(&mut self) -> &mut Vec<Element<'s>>
Returns a mutable reference to the document’s direct children.
pub fn to_owned(&self) -> Speak<'static>
pub fn into_owned(self) -> Speak<'static>
Trait Implementations§
Source§impl<'s, 's2: 's, T: Into<Element<'s2>>> AddAssign<T> for Speak<'s>
impl<'s, 's2: 's, T: Into<Element<'s2>>> AddAssign<T> for Speak<'s>
Source§fn add_assign(&mut self, rhs: T)
fn add_assign(&mut self, rhs: T)
Performs the
+=
operation. Read moreSource§impl<'s> Serialize for Speak<'s>
impl<'s> Serialize for Speak<'s>
Source§fn serialize_xml<W: Write>(
&self,
writer: &mut XmlWriter<W>,
options: &SerializeOptions,
) -> Result<()>
fn serialize_xml<W: Write>( &self, writer: &mut XmlWriter<W>, options: &SerializeOptions, ) -> Result<()>
Serialize this SSML element into an
XmlWriter
.Source§fn serialize<W: Write>(
&self,
writer: &mut W,
options: &SerializeOptions,
) -> Result<()>
fn serialize<W: Write>( &self, writer: &mut W, options: &SerializeOptions, ) -> Result<()>
Serialize this SSML element into an
std
Write
r.Source§fn serialize_to_string(&self, options: &SerializeOptions) -> Result<String>
fn serialize_to_string(&self, options: &SerializeOptions) -> Result<String>
Serialize this SSML element into a string.
Auto Trait Implementations§
impl<'s> Freeze for Speak<'s>
impl<'s> RefUnwindSafe for Speak<'s>
impl<'s> Send for Speak<'s>
impl<'s> Sync for Speak<'s>
impl<'s> Unpin for Speak<'s>
impl<'s> UnwindSafe for Speak<'s>
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more