Struct dockerfile_parser::BreakableString
source · [−]pub struct BreakableString {
pub span: Span,
pub components: Vec<BreakableStringComponent>,
}Expand description
A Docker string that may be broken across several lines, separated by line
continuations (\\\n), and possibly intermixed with comments.
These strings have several potentially valid interpretations. As these line
continuations match those natively supported by bash, a given multiline
RUN block can be pasted into a bash shell unaltered and with line
continuations included. However, at “runtime” line continuations and
comments (*) are stripped from the string handed to the shell.
To ensure output is correct in all cases, BreakableString preserves the
user’s original AST, including comments, and implements Docker’s
continuation-stripping behavior in the Display implementation.
Fields
span: Spancomponents: Vec<BreakableStringComponent>Implementations
sourceimpl BreakableString
impl BreakableString
pub fn new(span: impl Into<Span>) -> Self
pub fn add(self, c: impl Into<BreakableStringComponent>) -> Self
pub fn add_string(self, s: impl Into<Span>, c: impl Into<String>) -> Self
pub fn add_comment(self, s: impl Into<Span>, c: impl Into<String>) -> Self
pub fn iter_components(&self) -> impl Iterator<Item = &BreakableStringComponent>
Trait Implementations
sourceimpl Clone for BreakableString
impl Clone for BreakableString
sourcefn clone(&self) -> BreakableString
fn clone(&self) -> BreakableString
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source. Read more
sourceimpl Debug for BreakableString
impl Debug for BreakableString
sourceimpl Display for BreakableString
impl Display for BreakableString
Formats this breakable string as it will be interpreted by the underlying Docker engine, i.e. on a single line with line continuations removed
sourceimpl Ord for BreakableString
impl Ord for BreakableString
sourceimpl PartialEq<BreakableString> for BreakableString
impl PartialEq<BreakableString> for BreakableString
sourcefn eq(&self, other: &BreakableString) -> bool
fn eq(&self, other: &BreakableString) -> bool
This method tests for self and other values to be equal, and is used
by ==. Read more
sourcefn ne(&self, other: &BreakableString) -> bool
fn ne(&self, other: &BreakableString) -> bool
This method tests for !=.
sourceimpl PartialOrd<BreakableString> for BreakableString
impl PartialOrd<BreakableString> for BreakableString
sourcefn partial_cmp(&self, other: &BreakableString) -> Option<Ordering>
fn partial_cmp(&self, other: &BreakableString) -> Option<Ordering>
This method returns an ordering between self and other values if one exists. Read more
1.0.0 · sourcefn lt(&self, other: &Rhs) -> bool
fn lt(&self, other: &Rhs) -> bool
This method tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · sourcefn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for self and other) and is used by the <=
operator. Read more
impl Eq for BreakableString
impl StructuralEq for BreakableString
impl StructuralPartialEq for BreakableString
Auto Trait Implementations
impl RefUnwindSafe for BreakableString
impl Send for BreakableString
impl Sync for BreakableString
impl Unpin for BreakableString
impl UnwindSafe for BreakableString
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more