rust-analyzer/syntax/ast/index.html
github-merge-queue[bot] cddc2a952f deploy: 9923b0085c
2025-01-11 06:35:13 +00:00

9 lines
No EOL
38 KiB
HTML

<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Abstract Syntax Tree, layered on top of untyped `SyntaxNode`s"><title>syntax::ast - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-6b053e98.ttf.woff2,FiraSans-Regular-0fe48ade.woff2,FiraSans-Medium-e1aa3f0a.woff2,SourceCodePro-Regular-8badfe75.ttf.woff2,SourceCodePro-Semibold-aa29a496.ttf.woff2".split(",").map(f=>`<link rel="preload" as="font" type="font/woff2" crossorigin href="../../static.files/${f}">`).join(""))</script><link rel="stylesheet" href="../../static.files/normalize-9960930a.css"><link rel="stylesheet" href="../../static.files/rustdoc-42caa33d.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="syntax" data-themes="" data-resource-suffix="" data-rustdoc-version="1.84.0 (9fc6b4312 2025-01-07)" data-channel="1.84.0" data-search-js="search-92e6798f.js" data-settings-js="settings-0f613d39.js" ><script src="../../static.files/storage-59e33391.js"></script><script defer src="../sidebar-items.js"></script><script defer src="../../static.files/main-5f194d8c.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-893ab5e7.css"></noscript><link rel="alternate icon" type="image/png" href="../../static.files/favicon-32x32-6580c154.png"><link rel="icon" type="image/svg+xml" href="../../static.files/favicon-044be391.svg"></head><body class="rustdoc mod"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="mobile-topbar"><button class="sidebar-menu-toggle" title="show sidebar"></button></nav><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../syntax/index.html">syntax</a><span class="version">0.0.0</span></h2></div><div class="sidebar-elems"><section id="rustdoc-toc"><h2 class="location"><a href="#">Module ast</a></h2><h3><a href="#modules">Module Items</a></h3><ul class="block"><li><a href="#modules" title="Modules">Modules</a></li><li><a href="#structs" title="Structs">Structs</a></li><li><a href="#enums" title="Enums">Enums</a></li><li><a href="#traits" title="Traits">Traits</a></li></ul></section><div id="rustdoc-modnav"><h2 class="in-crate"><a href="../index.html">In crate syntax</a></h2></div></div></nav><div class="sidebar-resizer"></div><main><div class="width-limiter"><rustdoc-search></rustdoc-search><section id="main-content" class="content"><div class="main-heading"><span class="rustdoc-breadcrumbs"><a href="../index.html">syntax</a></span><h1>Module <span>ast</span><button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"><a class="src" href="../../src/syntax/ast.rs.html#1-439">Source</a> </span></div><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Abstract Syntax Tree, layered on top of untyped <code>SyntaxNode</code>s</p>
</div></details><h2 id="modules" class="section-header">Modules<a href="#modules" class="anchor">§</a></h2><ul class="item-table"><li><div class="item-name"><a class="mod" href="edit/index.html" title="mod syntax::ast::edit">edit</a></div><div class="desc docblock-short">This module contains functions for editing syntax trees. As the trees are
immutable, all function here return a fresh copy of the tree, instead of
doing an in-place modification.</div></li><li><div class="item-name"><a class="mod" href="edit_in_place/index.html" title="mod syntax::ast::edit_in_place">edit_<wbr>in_<wbr>place</a></div><div class="desc docblock-short">Structural editing for ast.</div></li><li><div class="item-name"><a class="mod" href="make/index.html" title="mod syntax::ast::make">make</a></div><div class="desc docblock-short">This module contains free-standing functions for creating AST fragments out
of smaller pieces.</div></li><li><div class="item-name"><a class="mod" href="prec/index.html" title="mod syntax::ast::prec">prec</a></div><div class="desc docblock-short">Precedence representation.</div></li><li><div class="item-name"><a class="mod" href="syntax_factory/index.html" title="mod syntax::ast::syntax_factory">syntax_<wbr>factory</a></div><div class="desc docblock-short">Builds upon <a href="make/index.html" title="mod syntax::ast::make"><code>crate::ast::make</code></a> constructors to create ast fragments with
optional syntax mappings.</div></li></ul><h2 id="structs" class="section-header">Structs<a href="#structs" class="anchor">§</a></h2><ul class="item-table"><li><div class="item-name"><a class="struct" href="struct.Abi.html" title="struct syntax::ast::Abi">Abi</a></div></li><li><div class="item-name"><a class="struct" href="struct.AnyHasArgList.html" title="struct syntax::ast::AnyHasArgList">AnyHas<wbr>ArgList</a></div></li><li><div class="item-name"><a class="struct" href="struct.AnyHasAttrs.html" title="struct syntax::ast::AnyHasAttrs">AnyHas<wbr>Attrs</a></div></li><li><div class="item-name"><a class="struct" href="struct.AnyHasDocComments.html" title="struct syntax::ast::AnyHasDocComments">AnyHas<wbr>DocComments</a></div></li><li><div class="item-name"><a class="struct" href="struct.AnyHasGenericArgs.html" title="struct syntax::ast::AnyHasGenericArgs">AnyHas<wbr>Generic<wbr>Args</a></div></li><li><div class="item-name"><a class="struct" href="struct.AnyHasGenericParams.html" title="struct syntax::ast::AnyHasGenericParams">AnyHas<wbr>Generic<wbr>Params</a></div></li><li><div class="item-name"><a class="struct" href="struct.AnyHasLoopBody.html" title="struct syntax::ast::AnyHasLoopBody">AnyHas<wbr>Loop<wbr>Body</a></div></li><li><div class="item-name"><a class="struct" href="struct.AnyHasModuleItem.html" title="struct syntax::ast::AnyHasModuleItem">AnyHas<wbr>Module<wbr>Item</a></div></li><li><div class="item-name"><a class="struct" href="struct.AnyHasName.html" title="struct syntax::ast::AnyHasName">AnyHas<wbr>Name</a></div></li><li><div class="item-name"><a class="struct" href="struct.AnyHasTypeBounds.html" title="struct syntax::ast::AnyHasTypeBounds">AnyHas<wbr>Type<wbr>Bounds</a></div></li><li><div class="item-name"><a class="struct" href="struct.AnyHasVisibility.html" title="struct syntax::ast::AnyHasVisibility">AnyHas<wbr>Visibility</a></div></li><li><div class="item-name"><a class="struct" href="struct.ArgList.html" title="struct syntax::ast::ArgList">ArgList</a></div></li><li><div class="item-name"><a class="struct" href="struct.ArrayExpr.html" title="struct syntax::ast::ArrayExpr">Array<wbr>Expr</a></div></li><li><div class="item-name"><a class="struct" href="struct.ArrayType.html" title="struct syntax::ast::ArrayType">Array<wbr>Type</a></div></li><li><div class="item-name"><a class="struct" href="struct.AsmClobberAbi.html" title="struct syntax::ast::AsmClobberAbi">AsmClobber<wbr>Abi</a></div></li><li><div class="item-name"><a class="struct" href="struct.AsmConst.html" title="struct syntax::ast::AsmConst">AsmConst</a></div></li><li><div class="item-name"><a class="struct" href="struct.AsmDirSpec.html" title="struct syntax::ast::AsmDirSpec">AsmDir<wbr>Spec</a></div></li><li><div class="item-name"><a class="struct" href="struct.AsmExpr.html" title="struct syntax::ast::AsmExpr">AsmExpr</a></div></li><li><div class="item-name"><a class="struct" href="struct.AsmLabel.html" title="struct syntax::ast::AsmLabel">AsmLabel</a></div></li><li><div class="item-name"><a class="struct" href="struct.AsmOperandExpr.html" title="struct syntax::ast::AsmOperandExpr">AsmOperand<wbr>Expr</a></div></li><li><div class="item-name"><a class="struct" href="struct.AsmOperandNamed.html" title="struct syntax::ast::AsmOperandNamed">AsmOperand<wbr>Named</a></div></li><li><div class="item-name"><a class="struct" href="struct.AsmOption.html" title="struct syntax::ast::AsmOption">AsmOption</a></div></li><li><div class="item-name"><a class="struct" href="struct.AsmOptions.html" title="struct syntax::ast::AsmOptions">AsmOptions</a></div></li><li><div class="item-name"><a class="struct" href="struct.AsmRegOperand.html" title="struct syntax::ast::AsmRegOperand">AsmReg<wbr>Operand</a></div></li><li><div class="item-name"><a class="struct" href="struct.AsmRegSpec.html" title="struct syntax::ast::AsmRegSpec">AsmReg<wbr>Spec</a></div></li><li><div class="item-name"><a class="struct" href="struct.AsmSym.html" title="struct syntax::ast::AsmSym">AsmSym</a></div></li><li><div class="item-name"><a class="struct" href="struct.AssocItemList.html" title="struct syntax::ast::AssocItemList">Assoc<wbr>Item<wbr>List</a></div></li><li><div class="item-name"><a class="struct" href="struct.AssocTypeArg.html" title="struct syntax::ast::AssocTypeArg">Assoc<wbr>Type<wbr>Arg</a></div></li><li><div class="item-name"><a class="struct" href="struct.AstChildren.html" title="struct syntax::ast::AstChildren">AstChildren</a></div><div class="desc docblock-short">An iterator over <code>SyntaxNode</code> children of a particular AST type.</div></li><li><div class="item-name"><a class="struct" href="struct.Attr.html" title="struct syntax::ast::Attr">Attr</a></div></li><li><div class="item-name"><a class="struct" href="struct.AttrDocCommentIter.html" title="struct syntax::ast::AttrDocCommentIter">Attr<wbr>DocComment<wbr>Iter</a></div></li><li><div class="item-name"><a class="struct" href="struct.AwaitExpr.html" title="struct syntax::ast::AwaitExpr">Await<wbr>Expr</a></div></li><li><div class="item-name"><a class="struct" href="struct.BecomeExpr.html" title="struct syntax::ast::BecomeExpr">Become<wbr>Expr</a></div></li><li><div class="item-name"><a class="struct" href="struct.BinExpr.html" title="struct syntax::ast::BinExpr">BinExpr</a></div></li><li><div class="item-name"><a class="struct" href="struct.BlockExpr.html" title="struct syntax::ast::BlockExpr">Block<wbr>Expr</a></div></li><li><div class="item-name"><a class="struct" href="struct.BoxPat.html" title="struct syntax::ast::BoxPat">BoxPat</a></div></li><li><div class="item-name"><a class="struct" href="struct.BreakExpr.html" title="struct syntax::ast::BreakExpr">Break<wbr>Expr</a></div></li><li><div class="item-name"><a class="struct" href="struct.Byte.html" title="struct syntax::ast::Byte">Byte</a></div></li><li><div class="item-name"><a class="struct" href="struct.ByteString.html" title="struct syntax::ast::ByteString">Byte<wbr>String</a></div></li><li><div class="item-name"><a class="struct" href="struct.CString.html" title="struct syntax::ast::CString">CString</a></div></li><li><div class="item-name"><a class="struct" href="struct.CallExpr.html" title="struct syntax::ast::CallExpr">Call<wbr>Expr</a></div></li><li><div class="item-name"><a class="struct" href="struct.CastExpr.html" title="struct syntax::ast::CastExpr">Cast<wbr>Expr</a></div></li><li><div class="item-name"><a class="struct" href="struct.Char.html" title="struct syntax::ast::Char">Char</a></div></li><li><div class="item-name"><a class="struct" href="struct.ClosureBinder.html" title="struct syntax::ast::ClosureBinder">Closure<wbr>Binder</a></div></li><li><div class="item-name"><a class="struct" href="struct.ClosureExpr.html" title="struct syntax::ast::ClosureExpr">Closure<wbr>Expr</a></div></li><li><div class="item-name"><a class="struct" href="struct.Comment.html" title="struct syntax::ast::Comment">Comment</a></div></li><li><div class="item-name"><a class="struct" href="struct.CommentKind.html" title="struct syntax::ast::CommentKind">Comment<wbr>Kind</a></div></li><li><div class="item-name"><a class="struct" href="struct.Const.html" title="struct syntax::ast::Const">Const</a></div></li><li><div class="item-name"><a class="struct" href="struct.ConstArg.html" title="struct syntax::ast::ConstArg">Const<wbr>Arg</a></div></li><li><div class="item-name"><a class="struct" href="struct.ConstBlockPat.html" title="struct syntax::ast::ConstBlockPat">Const<wbr>Block<wbr>Pat</a></div></li><li><div class="item-name"><a class="struct" href="struct.ConstParam.html" title="struct syntax::ast::ConstParam">Const<wbr>Param</a></div></li><li><div class="item-name"><a class="struct" href="struct.ContinueExpr.html" title="struct syntax::ast::ContinueExpr">Continue<wbr>Expr</a></div></li><li><div class="item-name"><a class="struct" href="struct.DocCommentIter.html" title="struct syntax::ast::DocCommentIter">DocComment<wbr>Iter</a></div></li><li><div class="item-name"><a class="struct" href="struct.DynTraitType.html" title="struct syntax::ast::DynTraitType">DynTrait<wbr>Type</a></div></li><li><div class="item-name"><a class="struct" href="struct.Enum.html" title="struct syntax::ast::Enum">Enum</a></div></li><li><div class="item-name"><a class="struct" href="struct.ExprStmt.html" title="struct syntax::ast::ExprStmt">Expr<wbr>Stmt</a></div></li><li><div class="item-name"><a class="struct" href="struct.ExternBlock.html" title="struct syntax::ast::ExternBlock">Extern<wbr>Block</a></div></li><li><div class="item-name"><a class="struct" href="struct.ExternCrate.html" title="struct syntax::ast::ExternCrate">Extern<wbr>Crate</a></div></li><li><div class="item-name"><a class="struct" href="struct.ExternItemList.html" title="struct syntax::ast::ExternItemList">Extern<wbr>Item<wbr>List</a></div></li><li><div class="item-name"><a class="struct" href="struct.FieldExpr.html" title="struct syntax::ast::FieldExpr">Field<wbr>Expr</a></div></li><li><div class="item-name"><a class="struct" href="struct.FloatNumber.html" title="struct syntax::ast::FloatNumber">Float<wbr>Number</a></div></li><li><div class="item-name"><a class="struct" href="struct.Fn.html" title="struct syntax::ast::Fn">Fn</a></div></li><li><div class="item-name"><a class="struct" href="struct.FnPtrType.html" title="struct syntax::ast::FnPtrType">FnPtr<wbr>Type</a></div></li><li><div class="item-name"><a class="struct" href="struct.ForExpr.html" title="struct syntax::ast::ForExpr">ForExpr</a></div></li><li><div class="item-name"><a class="struct" href="struct.ForType.html" title="struct syntax::ast::ForType">ForType</a></div></li><li><div class="item-name"><a class="struct" href="struct.FormatArgsArg.html" title="struct syntax::ast::FormatArgsArg">Format<wbr>Args<wbr>Arg</a></div></li><li><div class="item-name"><a class="struct" href="struct.FormatArgsExpr.html" title="struct syntax::ast::FormatArgsExpr">Format<wbr>Args<wbr>Expr</a></div></li><li><div class="item-name"><a class="struct" href="struct.GenericArgList.html" title="struct syntax::ast::GenericArgList">Generic<wbr>ArgList</a></div></li><li><div class="item-name"><a class="struct" href="struct.GenericParamList.html" title="struct syntax::ast::GenericParamList">Generic<wbr>Param<wbr>List</a></div></li><li><div class="item-name"><a class="struct" href="struct.Ident.html" title="struct syntax::ast::Ident">Ident</a></div></li><li><div class="item-name"><a class="struct" href="struct.IdentPat.html" title="struct syntax::ast::IdentPat">Ident<wbr>Pat</a></div></li><li><div class="item-name"><a class="struct" href="struct.IfExpr.html" title="struct syntax::ast::IfExpr">IfExpr</a></div></li><li><div class="item-name"><a class="struct" href="struct.Impl.html" title="struct syntax::ast::Impl">Impl</a></div></li><li><div class="item-name"><a class="struct" href="struct.ImplTraitType.html" title="struct syntax::ast::ImplTraitType">Impl<wbr>Trait<wbr>Type</a></div></li><li><div class="item-name"><a class="struct" href="struct.IndexExpr.html" title="struct syntax::ast::IndexExpr">Index<wbr>Expr</a></div></li><li><div class="item-name"><a class="struct" href="struct.InferType.html" title="struct syntax::ast::InferType">Infer<wbr>Type</a></div></li><li><div class="item-name"><a class="struct" href="struct.IntNumber.html" title="struct syntax::ast::IntNumber">IntNumber</a></div></li><li><div class="item-name"><a class="struct" href="struct.ItemList.html" title="struct syntax::ast::ItemList">Item<wbr>List</a></div></li><li><div class="item-name"><a class="struct" href="struct.Label.html" title="struct syntax::ast::Label">Label</a></div></li><li><div class="item-name"><a class="struct" href="struct.LetElse.html" title="struct syntax::ast::LetElse">LetElse</a></div></li><li><div class="item-name"><a class="struct" href="struct.LetExpr.html" title="struct syntax::ast::LetExpr">LetExpr</a></div></li><li><div class="item-name"><a class="struct" href="struct.LetStmt.html" title="struct syntax::ast::LetStmt">LetStmt</a></div></li><li><div class="item-name"><a class="struct" href="struct.Lifetime.html" title="struct syntax::ast::Lifetime">Lifetime</a></div></li><li><div class="item-name"><a class="struct" href="struct.LifetimeArg.html" title="struct syntax::ast::LifetimeArg">Lifetime<wbr>Arg</a></div></li><li><div class="item-name"><a class="struct" href="struct.LifetimeParam.html" title="struct syntax::ast::LifetimeParam">Lifetime<wbr>Param</a></div></li><li><div class="item-name"><a class="struct" href="struct.Literal.html" title="struct syntax::ast::Literal">Literal</a></div></li><li><div class="item-name"><a class="struct" href="struct.LiteralPat.html" title="struct syntax::ast::LiteralPat">Literal<wbr>Pat</a></div></li><li><div class="item-name"><a class="struct" href="struct.LoopExpr.html" title="struct syntax::ast::LoopExpr">Loop<wbr>Expr</a></div></li><li><div class="item-name"><a class="struct" href="struct.MacroCall.html" title="struct syntax::ast::MacroCall">Macro<wbr>Call</a></div></li><li><div class="item-name"><a class="struct" href="struct.MacroDef.html" title="struct syntax::ast::MacroDef">Macro<wbr>Def</a></div></li><li><div class="item-name"><a class="struct" href="struct.MacroExpr.html" title="struct syntax::ast::MacroExpr">Macro<wbr>Expr</a></div></li><li><div class="item-name"><a class="struct" href="struct.MacroItems.html" title="struct syntax::ast::MacroItems">Macro<wbr>Items</a></div></li><li><div class="item-name"><a class="struct" href="struct.MacroPat.html" title="struct syntax::ast::MacroPat">Macro<wbr>Pat</a></div></li><li><div class="item-name"><a class="struct" href="struct.MacroRules.html" title="struct syntax::ast::MacroRules">Macro<wbr>Rules</a></div></li><li><div class="item-name"><a class="struct" href="struct.MacroStmts.html" title="struct syntax::ast::MacroStmts">Macro<wbr>Stmts</a></div></li><li><div class="item-name"><a class="struct" href="struct.MacroType.html" title="struct syntax::ast::MacroType">Macro<wbr>Type</a></div></li><li><div class="item-name"><a class="struct" href="struct.MatchArm.html" title="struct syntax::ast::MatchArm">Match<wbr>Arm</a></div></li><li><div class="item-name"><a class="struct" href="struct.MatchArmList.html" title="struct syntax::ast::MatchArmList">Match<wbr>ArmList</a></div></li><li><div class="item-name"><a class="struct" href="struct.MatchExpr.html" title="struct syntax::ast::MatchExpr">Match<wbr>Expr</a></div></li><li><div class="item-name"><a class="struct" href="struct.MatchGuard.html" title="struct syntax::ast::MatchGuard">Match<wbr>Guard</a></div></li><li><div class="item-name"><a class="struct" href="struct.Meta.html" title="struct syntax::ast::Meta">Meta</a></div></li><li><div class="item-name"><a class="struct" href="struct.MethodCallExpr.html" title="struct syntax::ast::MethodCallExpr">Method<wbr>Call<wbr>Expr</a></div></li><li><div class="item-name"><a class="struct" href="struct.Module.html" title="struct syntax::ast::Module">Module</a></div></li><li><div class="item-name"><a class="struct" href="struct.Name.html" title="struct syntax::ast::Name">Name</a></div></li><li><div class="item-name"><a class="struct" href="struct.NameRef.html" title="struct syntax::ast::NameRef">NameRef</a></div></li><li><div class="item-name"><a class="struct" href="struct.NeverType.html" title="struct syntax::ast::NeverType">Never<wbr>Type</a></div></li><li><div class="item-name"><a class="struct" href="struct.OffsetOfExpr.html" title="struct syntax::ast::OffsetOfExpr">Offset<wbr>OfExpr</a></div></li><li><div class="item-name"><a class="struct" href="struct.OrPat.html" title="struct syntax::ast::OrPat">OrPat</a></div></li><li><div class="item-name"><a class="struct" href="struct.Param.html" title="struct syntax::ast::Param">Param</a></div></li><li><div class="item-name"><a class="struct" href="struct.ParamList.html" title="struct syntax::ast::ParamList">Param<wbr>List</a></div></li><li><div class="item-name"><a class="struct" href="struct.ParenExpr.html" title="struct syntax::ast::ParenExpr">Paren<wbr>Expr</a></div></li><li><div class="item-name"><a class="struct" href="struct.ParenPat.html" title="struct syntax::ast::ParenPat">Paren<wbr>Pat</a></div></li><li><div class="item-name"><a class="struct" href="struct.ParenType.html" title="struct syntax::ast::ParenType">Paren<wbr>Type</a></div></li><li><div class="item-name"><a class="struct" href="struct.ParenthesizedArgList.html" title="struct syntax::ast::ParenthesizedArgList">Parenthesized<wbr>ArgList</a></div></li><li><div class="item-name"><a class="struct" href="struct.Path.html" title="struct syntax::ast::Path">Path</a></div></li><li><div class="item-name"><a class="struct" href="struct.PathExpr.html" title="struct syntax::ast::PathExpr">Path<wbr>Expr</a></div></li><li><div class="item-name"><a class="struct" href="struct.PathPat.html" title="struct syntax::ast::PathPat">PathPat</a></div></li><li><div class="item-name"><a class="struct" href="struct.PathSegment.html" title="struct syntax::ast::PathSegment">Path<wbr>Segment</a></div></li><li><div class="item-name"><a class="struct" href="struct.PathType.html" title="struct syntax::ast::PathType">Path<wbr>Type</a></div></li><li><div class="item-name"><a class="struct" href="struct.PrefixExpr.html" title="struct syntax::ast::PrefixExpr">Prefix<wbr>Expr</a></div></li><li><div class="item-name"><a class="struct" href="struct.PtrType.html" title="struct syntax::ast::PtrType">PtrType</a></div></li><li><div class="item-name"><a class="struct" href="struct.QuoteOffsets.html" title="struct syntax::ast::QuoteOffsets">Quote<wbr>Offsets</a></div></li><li><div class="item-name"><a class="struct" href="struct.RangeExpr.html" title="struct syntax::ast::RangeExpr">Range<wbr>Expr</a></div></li><li><div class="item-name"><a class="struct" href="struct.RangePat.html" title="struct syntax::ast::RangePat">Range<wbr>Pat</a></div></li><li><div class="item-name"><a class="struct" href="struct.RecordExpr.html" title="struct syntax::ast::RecordExpr">Record<wbr>Expr</a></div></li><li><div class="item-name"><a class="struct" href="struct.RecordExprField.html" title="struct syntax::ast::RecordExprField">Record<wbr>Expr<wbr>Field</a></div></li><li><div class="item-name"><a class="struct" href="struct.RecordExprFieldList.html" title="struct syntax::ast::RecordExprFieldList">Record<wbr>Expr<wbr>Field<wbr>List</a></div></li><li><div class="item-name"><a class="struct" href="struct.RecordField.html" title="struct syntax::ast::RecordField">Record<wbr>Field</a></div></li><li><div class="item-name"><a class="struct" href="struct.RecordFieldList.html" title="struct syntax::ast::RecordFieldList">Record<wbr>Field<wbr>List</a></div></li><li><div class="item-name"><a class="struct" href="struct.RecordPat.html" title="struct syntax::ast::RecordPat">Record<wbr>Pat</a></div></li><li><div class="item-name"><a class="struct" href="struct.RecordPatField.html" title="struct syntax::ast::RecordPatField">Record<wbr>PatField</a></div></li><li><div class="item-name"><a class="struct" href="struct.RecordPatFieldList.html" title="struct syntax::ast::RecordPatFieldList">Record<wbr>PatField<wbr>List</a></div></li><li><div class="item-name"><a class="struct" href="struct.RefExpr.html" title="struct syntax::ast::RefExpr">RefExpr</a></div></li><li><div class="item-name"><a class="struct" href="struct.RefPat.html" title="struct syntax::ast::RefPat">RefPat</a></div></li><li><div class="item-name"><a class="struct" href="struct.RefType.html" title="struct syntax::ast::RefType">RefType</a></div></li><li><div class="item-name"><a class="struct" href="struct.Rename.html" title="struct syntax::ast::Rename">Rename</a></div></li><li><div class="item-name"><a class="struct" href="struct.RestPat.html" title="struct syntax::ast::RestPat">RestPat</a></div></li><li><div class="item-name"><a class="struct" href="struct.RetType.html" title="struct syntax::ast::RetType">RetType</a></div></li><li><div class="item-name"><a class="struct" href="struct.ReturnExpr.html" title="struct syntax::ast::ReturnExpr">Return<wbr>Expr</a></div></li><li><div class="item-name"><a class="struct" href="struct.ReturnTypeSyntax.html" title="struct syntax::ast::ReturnTypeSyntax">Return<wbr>Type<wbr>Syntax</a></div></li><li><div class="item-name"><a class="struct" href="struct.SelfParam.html" title="struct syntax::ast::SelfParam">Self<wbr>Param</a></div></li><li><div class="item-name"><a class="struct" href="struct.SlicePat.html" title="struct syntax::ast::SlicePat">Slice<wbr>Pat</a></div></li><li><div class="item-name"><a class="struct" href="struct.SlicePatComponents.html" title="struct syntax::ast::SlicePatComponents">Slice<wbr>PatComponents</a></div></li><li><div class="item-name"><a class="struct" href="struct.SliceType.html" title="struct syntax::ast::SliceType">Slice<wbr>Type</a></div></li><li><div class="item-name"><a class="struct" href="struct.SourceFile.html" title="struct syntax::ast::SourceFile">Source<wbr>File</a></div></li><li><div class="item-name"><a class="struct" href="struct.Static.html" title="struct syntax::ast::Static">Static</a></div></li><li><div class="item-name"><a class="struct" href="struct.StmtList.html" title="struct syntax::ast::StmtList">Stmt<wbr>List</a></div></li><li><div class="item-name"><a class="struct" href="struct.String.html" title="struct syntax::ast::String">String</a></div></li><li><div class="item-name"><a class="struct" href="struct.Struct.html" title="struct syntax::ast::Struct">Struct</a></div></li><li><div class="item-name"><a class="struct" href="struct.TokenTree.html" title="struct syntax::ast::TokenTree">Token<wbr>Tree</a></div></li><li><div class="item-name"><a class="struct" href="struct.Trait.html" title="struct syntax::ast::Trait">Trait</a></div></li><li><div class="item-name"><a class="struct" href="struct.TraitAlias.html" title="struct syntax::ast::TraitAlias">Trait<wbr>Alias</a></div></li><li><div class="item-name"><a class="struct" href="struct.TryExpr.html" title="struct syntax::ast::TryExpr">TryExpr</a></div></li><li><div class="item-name"><a class="struct" href="struct.TupleExpr.html" title="struct syntax::ast::TupleExpr">Tuple<wbr>Expr</a></div></li><li><div class="item-name"><a class="struct" href="struct.TupleField.html" title="struct syntax::ast::TupleField">Tuple<wbr>Field</a></div></li><li><div class="item-name"><a class="struct" href="struct.TupleFieldList.html" title="struct syntax::ast::TupleFieldList">Tuple<wbr>Field<wbr>List</a></div></li><li><div class="item-name"><a class="struct" href="struct.TuplePat.html" title="struct syntax::ast::TuplePat">Tuple<wbr>Pat</a></div></li><li><div class="item-name"><a class="struct" href="struct.TupleStructPat.html" title="struct syntax::ast::TupleStructPat">Tuple<wbr>Struct<wbr>Pat</a></div></li><li><div class="item-name"><a class="struct" href="struct.TupleType.html" title="struct syntax::ast::TupleType">Tuple<wbr>Type</a></div></li><li><div class="item-name"><a class="struct" href="struct.TypeAlias.html" title="struct syntax::ast::TypeAlias">Type<wbr>Alias</a></div></li><li><div class="item-name"><a class="struct" href="struct.TypeArg.html" title="struct syntax::ast::TypeArg">TypeArg</a></div></li><li><div class="item-name"><a class="struct" href="struct.TypeBound.html" title="struct syntax::ast::TypeBound">Type<wbr>Bound</a></div></li><li><div class="item-name"><a class="struct" href="struct.TypeBoundList.html" title="struct syntax::ast::TypeBoundList">Type<wbr>Bound<wbr>List</a></div></li><li><div class="item-name"><a class="struct" href="struct.TypeParam.html" title="struct syntax::ast::TypeParam">Type<wbr>Param</a></div></li><li><div class="item-name"><a class="struct" href="struct.UnderscoreExpr.html" title="struct syntax::ast::UnderscoreExpr">Underscore<wbr>Expr</a></div></li><li><div class="item-name"><a class="struct" href="struct.Union.html" title="struct syntax::ast::Union">Union</a></div></li><li><div class="item-name"><a class="struct" href="struct.Use.html" title="struct syntax::ast::Use">Use</a></div></li><li><div class="item-name"><a class="struct" href="struct.UseBoundGenericArgs.html" title="struct syntax::ast::UseBoundGenericArgs">UseBound<wbr>Generic<wbr>Args</a></div></li><li><div class="item-name"><a class="struct" href="struct.UseTree.html" title="struct syntax::ast::UseTree">UseTree</a></div></li><li><div class="item-name"><a class="struct" href="struct.UseTreeList.html" title="struct syntax::ast::UseTreeList">UseTree<wbr>List</a></div></li><li><div class="item-name"><a class="struct" href="struct.Variant.html" title="struct syntax::ast::Variant">Variant</a></div></li><li><div class="item-name"><a class="struct" href="struct.VariantList.html" title="struct syntax::ast::VariantList">Variant<wbr>List</a></div></li><li><div class="item-name"><a class="struct" href="struct.Visibility.html" title="struct syntax::ast::Visibility">Visibility</a></div></li><li><div class="item-name"><a class="struct" href="struct.WhereClause.html" title="struct syntax::ast::WhereClause">Where<wbr>Clause</a></div></li><li><div class="item-name"><a class="struct" href="struct.WherePred.html" title="struct syntax::ast::WherePred">Where<wbr>Pred</a></div></li><li><div class="item-name"><a class="struct" href="struct.WhileExpr.html" title="struct syntax::ast::WhileExpr">While<wbr>Expr</a></div></li><li><div class="item-name"><a class="struct" href="struct.Whitespace.html" title="struct syntax::ast::Whitespace">Whitespace</a></div></li><li><div class="item-name"><a class="struct" href="struct.WildcardPat.html" title="struct syntax::ast::WildcardPat">Wildcard<wbr>Pat</a></div></li><li><div class="item-name"><a class="struct" href="struct.YeetExpr.html" title="struct syntax::ast::YeetExpr">Yeet<wbr>Expr</a></div></li><li><div class="item-name"><a class="struct" href="struct.YieldExpr.html" title="struct syntax::ast::YieldExpr">Yield<wbr>Expr</a></div></li></ul><h2 id="enums" class="section-header">Enums<a href="#enums" class="anchor">§</a></h2><ul class="item-table"><li><div class="item-name"><a class="enum" href="enum.Adt.html" title="enum syntax::ast::Adt">Adt</a></div></li><li><div class="item-name"><a class="enum" href="enum.ArithOp.html" title="enum syntax::ast::ArithOp">ArithOp</a></div></li><li><div class="item-name"><a class="enum" href="enum.ArrayExprKind.html" title="enum syntax::ast::ArrayExprKind">Array<wbr>Expr<wbr>Kind</a></div></li><li><div class="item-name"><a class="enum" href="enum.AsmOperand.html" title="enum syntax::ast::AsmOperand">AsmOperand</a></div></li><li><div class="item-name"><a class="enum" href="enum.AsmPiece.html" title="enum syntax::ast::AsmPiece">AsmPiece</a></div></li><li><div class="item-name"><a class="enum" href="enum.AssocItem.html" title="enum syntax::ast::AssocItem">Assoc<wbr>Item</a></div></li><li><div class="item-name"><a class="enum" href="enum.AttrKind.html" title="enum syntax::ast::AttrKind">Attr<wbr>Kind</a></div></li><li><div class="item-name"><a class="enum" href="enum.BinaryOp.html" title="enum syntax::ast::BinaryOp">Binary<wbr>Op</a></div></li><li><div class="item-name"><a class="enum" href="enum.BlockModifier.html" title="enum syntax::ast::BlockModifier">Block<wbr>Modifier</a></div></li><li><div class="item-name"><a class="enum" href="enum.CallableExpr.html" title="enum syntax::ast::CallableExpr">Callable<wbr>Expr</a></div></li><li><div class="item-name"><a class="enum" href="enum.CmpOp.html" title="enum syntax::ast::CmpOp">CmpOp</a></div></li><li><div class="item-name"><a class="enum" href="enum.CommentPlacement.html" title="enum syntax::ast::CommentPlacement">Comment<wbr>Placement</a></div></li><li><div class="item-name"><a class="enum" href="enum.CommentShape.html" title="enum syntax::ast::CommentShape">Comment<wbr>Shape</a></div></li><li><div class="item-name"><a class="enum" href="enum.ElseBranch.html" title="enum syntax::ast::ElseBranch">Else<wbr>Branch</a></div></li><li><div class="item-name"><a class="enum" href="enum.Expr.html" title="enum syntax::ast::Expr">Expr</a></div></li><li><div class="item-name"><a class="enum" href="enum.ExternItem.html" title="enum syntax::ast::ExternItem">Extern<wbr>Item</a></div></li><li><div class="item-name"><a class="enum" href="enum.FieldKind.html" title="enum syntax::ast::FieldKind">Field<wbr>Kind</a></div></li><li><div class="item-name"><a class="enum" href="enum.FieldList.html" title="enum syntax::ast::FieldList">Field<wbr>List</a></div></li><li><div class="item-name"><a class="enum" href="enum.GenericArg.html" title="enum syntax::ast::GenericArg">Generic<wbr>Arg</a></div></li><li><div class="item-name"><a class="enum" href="enum.GenericParam.html" title="enum syntax::ast::GenericParam">Generic<wbr>Param</a></div></li><li><div class="item-name"><a class="enum" href="enum.Item.html" title="enum syntax::ast::Item">Item</a></div></li><li><div class="item-name"><a class="enum" href="enum.LiteralKind.html" title="enum syntax::ast::LiteralKind">Literal<wbr>Kind</a></div></li><li><div class="item-name"><a class="enum" href="enum.LogicOp.html" title="enum syntax::ast::LogicOp">LogicOp</a></div></li><li><div class="item-name"><a class="enum" href="enum.Macro.html" title="enum syntax::ast::Macro">Macro</a></div></li><li><div class="item-name"><a class="enum" href="enum.NameLike.html" title="enum syntax::ast::NameLike">Name<wbr>Like</a></div></li><li><div class="item-name"><a class="enum" href="enum.NameOrNameRef.html" title="enum syntax::ast::NameOrNameRef">Name<wbr>OrName<wbr>Ref</a></div></li><li><div class="item-name"><a class="enum" href="enum.Ordering.html" title="enum syntax::ast::Ordering">Ordering</a></div></li><li><div class="item-name"><a class="enum" href="enum.Pat.html" title="enum syntax::ast::Pat">Pat</a></div></li><li><div class="item-name"><a class="enum" href="enum.PathSegmentKind.html" title="enum syntax::ast::PathSegmentKind">Path<wbr>Segment<wbr>Kind</a></div></li><li><div class="item-name"><a class="enum" href="enum.Radix.html" title="enum syntax::ast::Radix">Radix</a></div></li><li><div class="item-name"><a class="enum" href="enum.RangeOp.html" title="enum syntax::ast::RangeOp">RangeOp</a></div></li><li><div class="item-name"><a class="enum" href="enum.SelfParamKind.html" title="enum syntax::ast::SelfParamKind">Self<wbr>Param<wbr>Kind</a></div></li><li><div class="item-name"><a class="enum" href="enum.Stmt.html" title="enum syntax::ast::Stmt">Stmt</a></div></li><li><div class="item-name"><a class="enum" href="enum.StructKind.html" title="enum syntax::ast::StructKind">Struct<wbr>Kind</a></div></li><li><div class="item-name"><a class="enum" href="enum.TraitOrAlias.html" title="enum syntax::ast::TraitOrAlias">Trait<wbr>OrAlias</a></div></li><li><div class="item-name"><a class="enum" href="enum.Type.html" title="enum syntax::ast::Type">Type</a></div></li><li><div class="item-name"><a class="enum" href="enum.TypeBoundKind.html" title="enum syntax::ast::TypeBoundKind">Type<wbr>Bound<wbr>Kind</a></div></li><li><div class="item-name"><a class="enum" href="enum.TypeOrConstParam.html" title="enum syntax::ast::TypeOrConstParam">Type<wbr>OrConst<wbr>Param</a></div></li><li><div class="item-name"><a class="enum" href="enum.UnaryOp.html" title="enum syntax::ast::UnaryOp">UnaryOp</a></div></li><li><div class="item-name"><a class="enum" href="enum.UseBoundGenericArg.html" title="enum syntax::ast::UseBoundGenericArg">UseBound<wbr>Generic<wbr>Arg</a></div></li><li><div class="item-name"><a class="enum" href="enum.VisibilityKind.html" title="enum syntax::ast::VisibilityKind">Visibility<wbr>Kind</a></div></li></ul><h2 id="traits" class="section-header">Traits<a href="#traits" class="anchor">§</a></h2><ul class="item-table"><li><div class="item-name"><a class="trait" href="trait.AstNode.html" title="trait syntax::ast::AstNode">AstNode</a></div><div class="desc docblock-short">The main trait to go from untyped <code>SyntaxNode</code> to a typed ast. The
conversion itself has zero runtime cost: ast and syntax nodes have exactly
the same representation: a pointer to the tree root and a pointer to the
node itself.</div></li><li><div class="item-name"><a class="trait" href="trait.AstToken.html" title="trait syntax::ast::AstToken">AstToken</a></div><div class="desc docblock-short">Like <code>AstNode</code>, but wraps tokens rather than interior nodes.</div></li><li><div class="item-name"><a class="trait" href="trait.HasArgList.html" title="trait syntax::ast::HasArgList">HasArg<wbr>List</a></div></li><li><div class="item-name"><a class="trait" href="trait.HasAttrs.html" title="trait syntax::ast::HasAttrs">HasAttrs</a></div></li><li><div class="item-name"><a class="trait" href="trait.HasDocComments.html" title="trait syntax::ast::HasDocComments">HasDoc<wbr>Comments</a></div></li><li><div class="item-name"><a class="trait" href="trait.HasGenericArgs.html" title="trait syntax::ast::HasGenericArgs">HasGeneric<wbr>Args</a></div></li><li><div class="item-name"><a class="trait" href="trait.HasGenericParams.html" title="trait syntax::ast::HasGenericParams">HasGeneric<wbr>Params</a></div></li><li><div class="item-name"><a class="trait" href="trait.HasLoopBody.html" title="trait syntax::ast::HasLoopBody">HasLoop<wbr>Body</a></div></li><li><div class="item-name"><a class="trait" href="trait.HasModuleItem.html" title="trait syntax::ast::HasModuleItem">HasModule<wbr>Item</a></div></li><li><div class="item-name"><a class="trait" href="trait.HasName.html" title="trait syntax::ast::HasName">HasName</a></div></li><li><div class="item-name"><a class="trait" href="trait.HasTypeBounds.html" title="trait syntax::ast::HasTypeBounds">HasType<wbr>Bounds</a></div></li><li><div class="item-name"><a class="trait" href="trait.HasVisibility.html" title="trait syntax::ast::HasVisibility">HasVisibility</a></div></li><li><div class="item-name"><a class="trait" href="trait.IsString.html" title="trait syntax::ast::IsString">IsString</a></div></li><li><div class="item-name"><a class="trait" href="trait.RangeItem.html" title="trait syntax::ast::RangeItem">Range<wbr>Item</a></div><div class="desc docblock-short">Trait to describe operations common to both <code>RangeExpr</code> and <code>RangePat</code>.</div></li></ul></section></div></main></body></html>