pub struct StmtConverter;Expand description
Converter for statement-level mutations
Implementations§
Source§impl StmtConverter
impl StmtConverter
pub fn new() -> Self
Sourcepub fn parse_expr(expr_str: &str) -> Result<PureExpr, ConvertError>
pub fn parse_expr(expr_str: &str) -> Result<PureExpr, ConvertError>
Parse a Rust expression string into PureExpr
Sourcepub fn parse_stmt(stmt_str: &str) -> Result<PureStmt, ConvertError>
pub fn parse_stmt(stmt_str: &str) -> Result<PureStmt, ConvertError>
Parse a Rust statement string into PureStmt
Trait Implementations§
Source§impl Clone for StmtConverter
impl Clone for StmtConverter
Source§fn clone(&self) -> StmtConverter
fn clone(&self) -> StmtConverter
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 StmtConverter
impl Debug for StmtConverter
Source§impl Default for StmtConverter
impl Default for StmtConverter
Source§fn default() -> StmtConverter
fn default() -> StmtConverter
Returns the “default value” for a type. Read more
Source§impl MutationConverter for StmtConverter
impl MutationConverter for StmtConverter
Source§fn spec_kinds(&self) -> &'static [&'static str]
fn spec_kinds(&self) -> &'static [&'static str]
Returns the spec kind(s) this converter handles
e.g., &[“Rename”] or &[“AddField”, “RemoveField”]
Source§fn convert_v2(
&self,
spec: &MutationSpec,
ctx: &AnalysisContext,
) -> Result<Vec<Box<dyn ASTRegApply>>, ConvertError>
fn convert_v2( &self, spec: &MutationSpec, ctx: &AnalysisContext, ) -> Result<Vec<Box<dyn ASTRegApply>>, ConvertError>
Convert MutationSpec to execution units (V2 API) Read more
Source§fn can_handle(&self, spec: &MutationSpec) -> bool
fn can_handle(&self, spec: &MutationSpec) -> bool
Check if this converter can handle the given spec
Source§fn convert(
&self,
_spec: &MutationSpec,
) -> Result<Box<dyn Mutation>, ConvertError>
fn convert( &self, _spec: &MutationSpec, ) -> Result<Box<dyn Mutation>, ConvertError>
👎Deprecated since 0.1.0:
Returns Box<dyn Mutation> for legacy apply(&mut PureFile). Use convert_v2() for ASTRegApply.
Convert a MutationSpec to a Mutation (DEPRECATED - use convert_v2 instead) Read more
Source§impl ResolveTargetSymbol for StmtConverter
impl ResolveTargetSymbol for StmtConverter
Source§fn resolve_target_symbol(
&self,
target: &MutationTargetSymbol,
ctx: &AnalysisContext,
) -> Result<SymbolId, ConvertError>
fn resolve_target_symbol( &self, target: &MutationTargetSymbol, ctx: &AnalysisContext, ) -> Result<SymbolId, ConvertError>
Resolve MutationTargetSymbol to SymbolId. Read more
Auto Trait Implementations§
impl Freeze for StmtConverter
impl RefUnwindSafe for StmtConverter
impl Send for StmtConverter
impl Sync for StmtConverter
impl Unpin for StmtConverter
impl UnsafeUnpin for StmtConverter
impl UnwindSafe for StmtConverter
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<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more