pub struct ExprRoundTripCase {
pub symbol: Symbol,
pub language: Symbol,
pub source: String,
pub expected_display: Option<String>,
pub affects_badge: Option<Symbol>,
}Expand description
Codec-faithful source case that decodes to the shared Expr graph.
The case records source text plus the canonical display expected from the
decoded expression. A missing expected display means successful decoding is
enough; a language-specific decoder returns Ok(None) for an explicit gap.
Fields§
§symbol: SymbolStable symbol identifying this case.
language: SymbolLanguage exercised by this case.
source: StringSource text.
expected_display: Option<String>Expected canonical display of the decoded expression.
affects_badge: Option<Symbol>Fidelity badge affected by this case, if any.
Implementations§
Source§impl ExprRoundTripCase
impl ExprRoundTripCase
Sourcepub fn run_expr_round_trip(
&self,
cx: &mut Cx,
decode_fn: impl Fn(&mut Cx, &str) -> Result<Option<Expr>>,
) -> ExprRoundTripObservation
pub fn run_expr_round_trip( &self, cx: &mut Cx, decode_fn: impl Fn(&mut Cx, &str) -> Result<Option<Expr>>, ) -> ExprRoundTripObservation
Runs this case using decode_fn to decode source into an expression.
Trait Implementations§
Source§impl Clone for ExprRoundTripCase
impl Clone for ExprRoundTripCase
Source§fn clone(&self) -> ExprRoundTripCase
fn clone(&self) -> ExprRoundTripCase
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for ExprRoundTripCase
impl Debug for ExprRoundTripCase
impl Eq for ExprRoundTripCase
Source§impl PartialEq for ExprRoundTripCase
impl PartialEq for ExprRoundTripCase
Source§fn eq(&self, other: &ExprRoundTripCase) -> bool
fn eq(&self, other: &ExprRoundTripCase) -> bool
Tests for
self and other values to be equal, and is used by ==.impl StructuralPartialEq for ExprRoundTripCase
Auto Trait Implementations§
impl Freeze for ExprRoundTripCase
impl RefUnwindSafe for ExprRoundTripCase
impl Send for ExprRoundTripCase
impl Sync for ExprRoundTripCase
impl Unpin for ExprRoundTripCase
impl UnsafeUnpin for ExprRoundTripCase
impl UnwindSafe for ExprRoundTripCase
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.