pub struct MessageBuilder { /* private fields */ }Expand description
A builder for constructing HL7 messages.
Implementations§
Source§impl MessageBuilder
impl MessageBuilder
Sourcepub fn new(separators: Separators) -> Self
pub fn new(separators: Separators) -> Self
Create a new message builder with the given separators. No segments are added.
Sourcepub fn push_segment(&mut self, segment: SegmentBuilder)
pub fn push_segment(&mut self, segment: SegmentBuilder)
Append a segment to the message. Segments will be output in the order they are added.
Sourcepub fn separators(&self) -> &Separators
pub fn separators(&self) -> &Separators
Get the separators used by the message.
Sourcepub fn segments(&self) -> &[SegmentBuilder]
pub fn segments(&self) -> &[SegmentBuilder]
Get the segments in the message.
Sourcepub fn segments_mut(&mut self) -> &mut Vec<SegmentBuilder>
pub fn segments_mut(&mut self) -> &mut Vec<SegmentBuilder>
Get a mutable reference to the segments in the message.
Sourcepub fn segment(&self, index: usize) -> Option<&SegmentBuilder>
pub fn segment(&self, index: usize) -> Option<&SegmentBuilder>
Get a segment by index (0-based).
Sourcepub fn segment_mut(&mut self, index: usize) -> Option<&mut SegmentBuilder>
pub fn segment_mut(&mut self, index: usize) -> Option<&mut SegmentBuilder>
Get a mutable reference to a segment by index (0-based).
Sourcepub fn remove_segment(&mut self, index: usize) -> Option<SegmentBuilder>
pub fn remove_segment(&mut self, index: usize) -> Option<SegmentBuilder>
Remove a segment by index (0-based).
Sourcepub fn segment_named<S: AsRef<str>>(&self, name: S) -> Option<&SegmentBuilder>
pub fn segment_named<S: AsRef<str>>(&self, name: S) -> Option<&SegmentBuilder>
Get the first segment with the given name.
Sourcepub fn segment_named_mut<S: AsRef<str>>(
&mut self,
name: S,
) -> Option<&mut SegmentBuilder>
pub fn segment_named_mut<S: AsRef<str>>( &mut self, name: S, ) -> Option<&mut SegmentBuilder>
Get a mutable reference to the first segment with the given name.
Sourcepub fn remove_segment_named<S: AsRef<str>>(
&mut self,
name: S,
) -> Option<SegmentBuilder>
pub fn remove_segment_named<S: AsRef<str>>( &mut self, name: S, ) -> Option<SegmentBuilder>
Remove the first segment with the given name.
Sourcepub fn segment_n<S: AsRef<str>>(
&self,
name: S,
n: usize,
) -> Option<&SegmentBuilder>
pub fn segment_n<S: AsRef<str>>( &self, name: S, n: usize, ) -> Option<&SegmentBuilder>
Get the nth segment with the given name (1-based).
Sourcepub fn segment_n_mut<S: AsRef<str>>(
&mut self,
name: S,
n: usize,
) -> Option<&mut SegmentBuilder>
pub fn segment_n_mut<S: AsRef<str>>( &mut self, name: S, n: usize, ) -> Option<&mut SegmentBuilder>
Get a mutable reference to the nth segment with the given name (1-based).
Sourcepub fn remove_segment_n<S: AsRef<str>>(
&mut self,
name: S,
n: usize,
) -> Option<SegmentBuilder>
pub fn remove_segment_n<S: AsRef<str>>( &mut self, name: S, n: usize, ) -> Option<SegmentBuilder>
Remove the nth segment with the given name (1-based).
Sourcepub fn set_separators(&mut self, separators: Separators)
pub fn set_separators(&mut self, separators: Separators)
Set the separators used by the message.
Sourcepub fn with_segment(self, segment: SegmentBuilder) -> Self
pub fn with_segment(self, segment: SegmentBuilder) -> Self
Add a segment to the message.
Sourcepub fn render_with_newlines(&self) -> MessageBuilderDisplay<'_>
pub fn render_with_newlines(&self) -> MessageBuilderDisplay<'_>
Display the message with the default line endings for the current platform.
On Windows, this will use \r\n as the line ending. On other platforms, it will use \n.
Sourcepub fn render_with_segment_separators<'a>(
&'a self,
line_endings: &'a str,
) -> MessageBuilderDisplay<'a>
pub fn render_with_segment_separators<'a>( &'a self, line_endings: &'a str, ) -> MessageBuilderDisplay<'a>
Display the message with the given line endings.
Trait Implementations§
Source§impl Clone for MessageBuilder
impl Clone for MessageBuilder
Source§fn clone(&self) -> MessageBuilder
fn clone(&self) -> MessageBuilder
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for MessageBuilder
impl Debug for MessageBuilder
Source§impl Default for MessageBuilder
impl Default for MessageBuilder
Source§fn default() -> MessageBuilder
fn default() -> MessageBuilder
Source§impl<'de> Deserialize<'de> for MessageBuilder
impl<'de> Deserialize<'de> for MessageBuilder
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl Display for MessageBuilder
Render the message using the proper \r segment separators.
impl Display for MessageBuilder
Render the message using the proper \r segment separators.
Source§impl<'m> From<&'m Message<'m>> for MessageBuilder
Convert a message into a message builder.
impl<'m> From<&'m Message<'m>> for MessageBuilder
Convert a message into a message builder.