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.