pub struct ConditionalBranch {
pub literal: Literal,
pub negated: bool,
pub literal_span: ExprSpan,
pub relationships: Vec<RelationshipDecl>,
pub leading_comment: Option<Comment>,
pub trailing_line_comment: Option<Comment>,
pub blank_line_before: bool,
pub trailing_comment: Option<Comment>,
pub blank_line_before_close: bool,
pub open_brace_span: ExprSpan,
pub span: ExprSpan,
}Expand description
conditional_branch = literal_pattern "=>" "{" { relationship_decl } "}" [ "," ].
literal_pattern = ["-"] literal.
Fields§
§literal: LiteralThe branch’s unresolved match literal, always stored unsigned; see Self::negated
for whether a leading - applies to it.
negated: boolWhether the branch key is negated by a leading - (Rust’s own LiteralPattern rule —
see https://doc.rust-lang.org/reference/patterns.html#literal-patterns). A -, if
present, precedes Self::literal_span and is covered by Self::span’s start, but
not by literal_span itself.
literal_span: ExprSpanThe literal token’s own span (never includes a leading -; see Self::negated).
relationships: Vec<RelationshipDecl>The branch’s relationships, in declaration order.
leading_comment: Option<Comment>A leading comment immediately preceding this branch, if recovered by
crate::trivia::attach_trivia.
trailing_line_comment: Option<Comment>A ////* */ comment on the same source line as this branch’s own closing }, if
recovered. Distinct from trailing_comment, which precedes this branch’s own closing
} on an earlier line. See https://github.com/stlab/cel-rs/issues/59.
blank_line_before: boolWhether a blank line preceded this branch, if recovered by
crate::trivia::attach_trivia.
trailing_comment: Option<Comment>A trailing comment immediately preceding this branch’s own closing }, if recovered.
See https://github.com/stlab/cel-rs/issues/52.
blank_line_before_close: boolWhether a blank line preceded this branch’s own closing }, if recovered. See
https://github.com/stlab/cel-rs/issues/52.
open_brace_span: ExprSpanThe span of this branch’s own opening {, used to recover trailing trivia when
relationships is empty. See https://github.com/stlab/cel-rs/issues/52.
span: ExprSpanThe span from the branch’s literal through its closing }.
Trait Implementations§
Source§impl Clone for ConditionalBranch
impl Clone for ConditionalBranch
Source§fn clone(&self) -> ConditionalBranch
fn clone(&self) -> ConditionalBranch
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more