[][src]Trait c2rust_refactor::rewrite::Rewrite

pub trait Rewrite {
    fn rewrite(old: &Self, new: &Self, rcx: RewriteCtxtRef) -> bool;
}

Required methods

fn rewrite(old: &Self, new: &Self, rcx: RewriteCtxtRef) -> bool

Given an old AST, a new AST, and text corresponding to the old AST, transform the text into text corresponding to the new AST. rcx tracks the old text (in the form of a SourceMap) and the rewrites. Returns true if rewriting succeeded, false otherwise.

Loading content...

Implementations on Foreign Types

impl Rewrite for Crate[src]

impl Rewrite for Mod[src]

impl Rewrite for Item[src]

impl Rewrite for ItemKind[src]

impl Rewrite for UseTreeKind[src]

impl Rewrite for UseTree[src]

impl Rewrite for TraitItem[src]

impl Rewrite for TraitItemKind[src]

impl Rewrite for ImplItem[src]

impl Rewrite for ImplItemKind[src]

impl Rewrite for TraitRef[src]

impl Rewrite for EnumDef[src]

impl Rewrite for Variant_[src]

impl Rewrite for VariantData[src]

impl Rewrite for StructField[src]

impl Rewrite for MethodSig[src]

impl Rewrite for ForeignMod[src]

impl Rewrite for ForeignItem[src]

impl Rewrite for ForeignItemKind[src]

impl Rewrite for Generics[src]

impl Rewrite for GenericParam[src]

impl Rewrite for GenericParamKind[src]

impl Rewrite for WhereClause[src]

impl Rewrite for WherePredicate[src]

impl Rewrite for WhereBoundPredicate[src]

impl Rewrite for WhereRegionPredicate[src]

impl Rewrite for WhereEqPredicate[src]

impl Rewrite for TraitBoundModifier[src]

impl Rewrite for VisibilityKind[src]

impl Rewrite for CrateSugar[src]

impl Rewrite for Ty[src]

impl Rewrite for MutTy[src]

impl Rewrite for TyKind[src]

impl Rewrite for TraitObjectSyntax[src]

impl Rewrite for LitIntType[src]

impl Rewrite for FloatTy[src]

impl Rewrite for BareFnTy[src]

impl Rewrite for Lifetime[src]

impl Rewrite for GenericBound[src]

impl Rewrite for PolyTraitRef[src]

impl Rewrite for FnDecl[src]

impl Rewrite for FnHeader[src]

impl Rewrite for Arg[src]

impl Rewrite for FunctionRetTy[src]

impl Rewrite for TypeBinding[src]

impl Rewrite for Stmt[src]

impl Rewrite for StmtKind[src]

impl Rewrite for Local[src]

impl Rewrite for Expr[src]

impl Rewrite for ExprKind[src]

impl Rewrite for IsAsync[src]

impl Rewrite for Movability[src]

impl Rewrite for UnOp[src]

impl Rewrite for BinOpKind[src]

impl Rewrite for Field[src]

impl Rewrite for Arm[src]

impl Rewrite for Guard[src]

impl Rewrite for Block[src]

impl Rewrite for Pat[src]

impl Rewrite for PatKind[src]

impl Rewrite for FieldPat[src]

impl Rewrite for LitKind[src]

impl Rewrite for Defaultness[src]

impl Rewrite for Constness[src]

impl Rewrite for ImplPolarity[src]

impl Rewrite for IsAuto[src]

impl Rewrite for Unsafety[src]

impl Rewrite for Abi[src]

impl Rewrite for Mutability[src]

impl Rewrite for RangeEnd[src]

impl Rewrite for RangeSyntax[src]

impl Rewrite for BindingMode[src]

impl Rewrite for CaptureBy[src]

impl Rewrite for BlockCheckMode[src]

impl Rewrite for UnsafeSource[src]

impl Rewrite for StrStyle[src]

impl Rewrite for AsmDialect[src]

impl Rewrite for RangeLimits[src]

impl Rewrite for Attribute[src]

impl Rewrite for AttrStyle[src]

impl Rewrite for Path[src]

impl Rewrite for PathSegment[src]

impl Rewrite for GenericArgs[src]

impl Rewrite for AngleBracketedArgs[src]

impl Rewrite for ParenthesizedArgs[src]

impl Rewrite for GenericArg[src]

impl Rewrite for QSelf[src]

impl Rewrite for Mac_[src]

impl Rewrite for MacStmtStyle[src]

impl Rewrite for TokenStream[src]

impl Rewrite for MacroDef[src]

impl Rewrite for InlineAsm[src]

impl Rewrite for GlobalAsm[src]

impl Rewrite for InlineAsmOutput[src]

impl Rewrite for Label[src]

impl Rewrite for MacDelimiter[src]

impl Rewrite for AnonConst[src]

impl Rewrite for Ident[src]

impl Rewrite for Name[src]

impl Rewrite for SyntaxContext[src]

impl Rewrite for Span[src]

impl Rewrite for NodeId[src]

impl Rewrite for AttrId[src]

impl Rewrite for usize[src]

impl Rewrite for bool[src]

impl Rewrite for u128[src]

impl Rewrite for u8[src]

impl Rewrite for char[src]

impl Rewrite for Nonterminal[src]

impl Rewrite for TokenTree[src]

impl Rewrite for DelimSpan[src]

impl Rewrite for DelimToken[src]

impl Rewrite for Token[src]

impl Rewrite for MetaItem[src]

impl Rewrite for MetaItemKind[src]

impl Rewrite for NestedMetaItem[src]

impl<T: Rewrite> Rewrite for P<T>[src]

impl<T: Rewrite> Rewrite for Rc<T>[src]

impl<T: Rewrite> Rewrite for Spanned<T>[src]

impl<T: Rewrite> Rewrite for Option<T>[src]

impl<A: Rewrite, B: Rewrite> Rewrite for (A, B)[src]

impl<A: Rewrite, B: Rewrite, C: Rewrite> Rewrite for (A, B, C)[src]

impl<T: MaybeRewriteSeq> Rewrite for [T][src]

impl<T: MaybeRewriteSeq> Rewrite for Vec<T>[src]

impl<T: MaybeRewriteSeq> Rewrite for ThinVec<T>[src]

Loading content...

Implementors

Loading content...