mirror of
https://github.com/GreptimeTeam/greptimedb.git
synced 2025-12-22 22:20:02 +00:00
602 lines
239 KiB
HTML
602 lines
239 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="An SQL expression of any type."><title>Expr in common_sql::error - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-6b053e98.ttf.woff2,FiraSans-Italic-81dc35de.woff2,FiraSans-Regular-0fe48ade.woff2,FiraSans-MediumItalic-ccf7e434.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"href="../../static.files/${f}">`).join(""))</script><link rel="stylesheet" href="../../static.files/normalize-9960930a.css"><link rel="stylesheet" href="../../static.files/rustdoc-e56847b5.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="common_sql" data-themes="" data-resource-suffix="" data-rustdoc-version="1.92.0-nightly (fa3155a64 2025-09-30)" data-channel="nightly" data-search-js="search-e256b49e.js" data-stringdex-js="stringdex-828709d0.js" data-settings-js="settings-c38705f0.js" ><script src="../../static.files/storage-e2aeef58.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../static.files/main-ce535bd0.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-263c88ec.css"></noscript><link rel="alternate icon" type="image/png" href="../../static.files/favicon-32x32-eab170b8.png"><link rel="icon" type="image/svg+xml" href="../../static.files/favicon-044be391.svg"></head><body class="rustdoc enum"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><rustdoc-topbar><h2><a href="#">Expr</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../common_sql/index.html">common_<wbr>sql</a><span class="version">1.0.0-beta.3</span></h2></div><div class="sidebar-elems"><section id="rustdoc-toc"><h2 class="location"><a href="#">Expr</a></h2><h3><a href="#">Sections</a></h3><ul class="block top-toc"><li><a href="#semantics--type-checking" title="Semantics / Type Checking">Semantics / Type Checking</a></li><li><a href="#equality-and-hashing-does-not-include-source-locations" title="Equality and Hashing Does not Include Source Locations">Equality and Hashing Does not Include Source Locations</a></li></ul><h3><a href="#variants">Variants</a></h3><ul class="block variant"><li><a href="#variant.AllOp" title="AllOp">AllOp</a></li><li><a href="#variant.AnyOp" title="AnyOp">AnyOp</a></li><li><a href="#variant.Array" title="Array">Array</a></li><li><a href="#variant.AtTimeZone" title="AtTimeZone">AtTimeZone</a></li><li><a href="#variant.Between" title="Between">Between</a></li><li><a href="#variant.BinaryOp" title="BinaryOp">BinaryOp</a></li><li><a href="#variant.Case" title="Case">Case</a></li><li><a href="#variant.Cast" title="Cast">Cast</a></li><li><a href="#variant.Ceil" title="Ceil">Ceil</a></li><li><a href="#variant.Collate" title="Collate">Collate</a></li><li><a href="#variant.CompoundFieldAccess" title="CompoundFieldAccess">CompoundFieldAccess</a></li><li><a href="#variant.CompoundIdentifier" title="CompoundIdentifier">CompoundIdentifier</a></li><li><a href="#variant.Convert" title="Convert">Convert</a></li><li><a href="#variant.Cube" title="Cube">Cube</a></li><li><a href="#variant.Dictionary" title="Dictionary">Dictionary</a></li><li><a href="#variant.Exists" title="Exists">Exists</a></li><li><a href="#variant.Extract" title="Extract">Extract</a></li><li><a href="#variant.Floor" title="Floor">Floor</a></li><li><a href="#variant.Function" title="Function">Function</a></li><li><a href="#variant.GroupingSets" title="GroupingSets">GroupingSets</a></li><li><a href="#variant.ILike" title="ILike">ILike</a></li><li><a href="#variant.Identifier" title="Identifier">Identifier</a></li><li><a href="#variant.InList" title="InList">InList</a></li><li><a href="#variant.InSubquery" title="InSubquery">InSubquery</a></li><li><a href="#variant.InUnnest" title="InUnnest">InUnnest</a></li><li><a href="#variant.Interval" title="Interval">Interval</a></li><li><a href="#variant.IsDistinctFrom" title="IsDistinctFrom">IsDistinctFrom</a></li><li><a href="#variant.IsFalse" title="IsFalse">IsFalse</a></li><li><a href="#variant.IsNormalized" title="IsNormalized">IsNormalized</a></li><li><a href="#variant.IsNotDistinctFrom" title="IsNotDistinctFrom">IsNotDistinctFrom</a></li><li><a href="#variant.IsNotFalse" title="IsNotFalse">IsNotFalse</a></li><li><a href="#variant.IsNotNull" title="IsNotNull">IsNotNull</a></li><li><a href="#variant.IsNotTrue" title="IsNotTrue">IsNotTrue</a></li><li><a href="#variant.IsNotUnknown" title="IsNotUnknown">IsNotUnknown</a></li><li><a href="#variant.IsNull" title="IsNull">IsNull</a></li><li><a href="#variant.IsTrue" title="IsTrue">IsTrue</a></li><li><a href="#variant.IsUnknown" title="IsUnknown">IsUnknown</a></li><li><a href="#variant.JsonAccess" title="JsonAccess">JsonAccess</a></li><li><a href="#variant.Lambda" title="Lambda">Lambda</a></li><li><a href="#variant.Like" title="Like">Like</a></li><li><a href="#variant.Map" title="Map">Map</a></li><li><a href="#variant.MatchAgainst" title="MatchAgainst">MatchAgainst</a></li><li><a href="#variant.MemberOf" title="MemberOf">MemberOf</a></li><li><a href="#variant.Named" title="Named">Named</a></li><li><a href="#variant.Nested" title="Nested">Nested</a></li><li><a href="#variant.OuterJoin" title="OuterJoin">OuterJoin</a></li><li><a href="#variant.Overlay" title="Overlay">Overlay</a></li><li><a href="#variant.Position" title="Position">Position</a></li><li><a href="#variant.Prefixed" title="Prefixed">Prefixed</a></li><li><a href="#variant.Prior" title="Prior">Prior</a></li><li><a href="#variant.QualifiedWildcard" title="QualifiedWildcard">QualifiedWildcard</a></li><li><a href="#variant.RLike" title="RLike">RLike</a></li><li><a href="#variant.Rollup" title="Rollup">Rollup</a></li><li><a href="#variant.SimilarTo" title="SimilarTo">SimilarTo</a></li><li><a href="#variant.Struct" title="Struct">Struct</a></li><li><a href="#variant.Subquery" title="Subquery">Subquery</a></li><li><a href="#variant.Substring" title="Substring">Substring</a></li><li><a href="#variant.Trim" title="Trim">Trim</a></li><li><a href="#variant.Tuple" title="Tuple">Tuple</a></li><li><a href="#variant.TypedString" title="TypedString">TypedString</a></li><li><a href="#variant.UnaryOp" title="UnaryOp">UnaryOp</a></li><li><a href="#variant.Value" title="Value">Value</a></li><li><a href="#variant.Wildcard" title="Wildcard">Wildcard</a></li></ul><h3><a href="#implementations">Methods</a></h3><ul class="block method"><li><a href="#method.value" title="value">value</a></li></ul><h3><a href="#trait-implementations">Trait Implementations</a></h3><ul class="block trait-implementation"><li><a href="#impl-Clone-for-Expr" title="Clone">Clone</a></li><li><a href="#impl-Debug-for-Expr" title="Debug">Debug</a></li><li><a href="#impl-Deserialize%3C'de%3E-for-Expr" title="Deserialize<'de>">Deserialize<'de></a></li><li><a href="#impl-Display-for-Expr" title="Display">Display</a></li><li><a href="#impl-Eq-for-Expr" title="Eq">Eq</a></li><li><a href="#impl-From%3CExpr%3E-for-FunctionArgExpr" title="From<Expr>">From<Expr></a></li><li><a href="#impl-Hash-for-Expr" title="Hash">Hash</a></li><li><a href="#impl-Ord-for-Expr" title="Ord">Ord</a></li><li><a href="#impl-PartialEq-for-Expr" title="PartialEq">PartialEq</a></li><li><a href="#impl-PartialOrd-for-Expr" title="PartialOrd">PartialOrd</a></li><li><a href="#impl-Serialize-for-Expr" title="Serialize">Serialize</a></li><li><a href="#impl-Spanned-for-Expr" title="Spanned">Spanned</a></li><li><a href="#impl-StructuralPartialEq-for-Expr" title="StructuralPartialEq">StructuralPartialEq</a></li><li><a href="#impl-Visit-for-Expr" title="Visit">Visit</a></li><li><a href="#impl-VisitMut-for-Expr" title="VisitMut">VisitMut</a></li></ul><h3><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul class="block synthetic-implementation"><li><a href="#impl-Freeze-for-Expr" title="Freeze">Freeze</a></li><li><a href="#impl-RefUnwindSafe-for-Expr" title="RefUnwindSafe">RefUnwindSafe</a></li><li><a href="#impl-Send-for-Expr" title="Send">Send</a></li><li><a href="#impl-Sync-for-Expr" title="Sync">Sync</a></li><li><a href="#impl-Unpin-for-Expr" title="Unpin">Unpin</a></li><li><a href="#impl-UnwindSafe-for-Expr" title="UnwindSafe">UnwindSafe</a></li></ul><h3><a href="#blanket-implementations">Blanket Implementations</a></h3><ul class="block blanket-implementation"><li><a href="#impl-Allocation-for-T" title="Allocation">Allocation</a></li><li><a href="#impl-Any-for-T" title="Any">Any</a></li><li><a href="#impl-Any-for-T-1" title="Any">Any</a></li><li><a href="#impl-Borrow%3CT%3E-for-T" title="Borrow<T>">Borrow<T></a></li><li><a href="#impl-BorrowMut%3CT%3E-for-T" title="BorrowMut<T>">BorrowMut<T></a></li><li><a href="#impl-CloneAny-for-T" title="CloneAny">CloneAny</a></li><li><a href="#impl-CloneAnySend-for-T" title="CloneAnySend">CloneAnySend</a></li><li><a href="#impl-CloneAnySendSync-for-T" title="CloneAnySendSync">CloneAnySendSync</a></li><li><a href="#impl-CloneAnySync-for-T" title="CloneAnySync">CloneAnySync</a></li><li><a href="#impl-CloneToUninit-for-T" title="CloneToUninit">CloneToUninit</a></li><li><a href="#impl-Comparable%3CK%3E-for-Q" title="Comparable<K>">Comparable<K></a></li><li><a href="#impl-Conv-for-T" title="Conv">Conv</a></li><li><a href="#impl-Convert%3CT%3E-for-V" title="Convert<T>">Convert<T></a></li><li><a href="#impl-DeserializeOwned-for-T" title="DeserializeOwned">DeserializeOwned</a></li><li><a href="#impl-DynEq-for-T" title="DynEq">DynEq</a></li><li><a href="#impl-DynHash-for-T" title="DynHash">DynHash</a></li><li><a href="#impl-Equivalent%3CK%3E-for-Q" title="Equivalent<K>">Equivalent<K></a></li><li><a href="#impl-Equivalent%3CK%3E-for-Q-1" title="Equivalent<K>">Equivalent<K></a></li><li><a href="#impl-Equivalent%3CK%3E-for-Q-2" title="Equivalent<K>">Equivalent<K></a></li><li><a href="#impl-ErasedDestructor-for-T" title="ErasedDestructor">ErasedDestructor</a></li><li><a href="#impl-FmtForward-for-T" title="FmtForward">FmtForward</a></li><li><a href="#impl-From%3CT%3E-for-T" title="From<T>">From<T></a></li><li><a href="#impl-FromRef%3CT%3E-for-T" title="FromRef<T>">FromRef<T></a></li><li><a href="#impl-FutureExt-for-T" title="FutureExt">FutureExt</a></li><li><a href="#impl-Instrument-for-T" title="Instrument">Instrument</a></li><li><a href="#impl-Into%3CU%3E-for-T" title="Into<U>">Into<U></a></li><li><a href="#impl-IntoEither-for-T" title="IntoEither">IntoEither</a></li><li><a href="#impl-IntoRequest%3CT%3E-for-T" title="IntoRequest<T>">IntoRequest<T></a></li><li><a href="#impl-LayerExt%3CL%3E-for-L" title="LayerExt<L>">LayerExt<L></a></li><li><a href="#impl-Pipe-for-T" title="Pipe">Pipe</a></li><li><a href="#impl-PolicyExt-for-T" title="PolicyExt">PolicyExt</a></li><li><a href="#impl-Same-for-T" title="Same">Same</a></li><li><a href="#impl-ServiceExt-for-T" title="ServiceExt">ServiceExt</a></li><li><a href="#impl-Tap-for-T" title="Tap">Tap</a></li><li><a href="#impl-ToOwned-for-T" title="ToOwned">ToOwned</a></li><li><a href="#impl-ToString-for-T" title="ToString">ToString</a></li><li><a href="#impl-ToStringFallible-for-T" title="ToStringFallible">ToStringFallible</a></li><li><a href="#impl-TryConv-for-T" title="TryConv">TryConv</a></li><li><a href="#impl-TryFrom%3CU%3E-for-T" title="TryFrom<U>">TryFrom<U></a></li><li><a href="#impl-TryInto%3CU%3E-for-T" title="TryInto<U>">TryInto<U></a></li><li><a href="#impl-VZip%3CV%3E-for-T" title="VZip<V>">VZip<V></a></li><li><a href="#impl-WithSubscriber-for-T" title="WithSubscriber">WithSubscriber</a></li></ul></section><div id="rustdoc-modnav"><h2><a href="index.html">In common_<wbr>sql::<wbr>error</a></h2></div></div></nav><div class="sidebar-resizer" title="Drag to resize sidebar"></div><main><div class="width-limiter"><section id="main-content" class="content"><div class="main-heading"><div class="rustdoc-breadcrumbs"><a href="../index.html">common_sql</a>::<wbr><a href="index.html">error</a></div><h1>Enum <span class="enum">Expr</span> <button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"></span></div><pre class="rust item-decl"><code>pub enum Expr {
|
|
<details class="toggle type-contents-toggle"><summary class="hideme"><span>Show 63 variants</span></summary> Identifier(<a class="struct" href="../convert/struct.Ident.html" title="struct common_sql::convert::Ident">Ident</a>),
|
|
CompoundIdentifier(<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="struct" href="../convert/struct.Ident.html" title="struct common_sql::convert::Ident">Ident</a>>),
|
|
CompoundFieldAccess {
|
|
root: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>,
|
|
access_chain: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><AccessExpr>,
|
|
},
|
|
JsonAccess {
|
|
value: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>,
|
|
path: JsonPath,
|
|
},
|
|
IsFalse(<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>),
|
|
IsNotFalse(<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>),
|
|
IsTrue(<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>),
|
|
IsNotTrue(<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>),
|
|
IsNull(<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>),
|
|
IsNotNull(<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>),
|
|
IsUnknown(<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>),
|
|
IsNotUnknown(<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>),
|
|
IsDistinctFrom(<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>, <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>),
|
|
IsNotDistinctFrom(<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>, <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>),
|
|
IsNormalized {
|
|
expr: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>,
|
|
form: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><NormalizationForm>,
|
|
negated: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>,
|
|
},
|
|
InList {
|
|
expr: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>,
|
|
list: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>,
|
|
negated: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>,
|
|
},
|
|
InSubquery {
|
|
expr: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>,
|
|
subquery: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><Query>,
|
|
negated: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>,
|
|
},
|
|
InUnnest {
|
|
expr: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>,
|
|
array_expr: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>,
|
|
negated: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>,
|
|
},
|
|
Between {
|
|
expr: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>,
|
|
negated: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>,
|
|
low: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>,
|
|
high: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>,
|
|
},
|
|
BinaryOp {
|
|
left: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>,
|
|
op: <a class="enum" href="../convert/enum.BinaryOperator.html" title="enum common_sql::convert::BinaryOperator">BinaryOperator</a>,
|
|
right: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>,
|
|
},
|
|
Like {
|
|
negated: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>,
|
|
any: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>,
|
|
expr: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>,
|
|
pattern: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>,
|
|
escape_char: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="enum" href="../convert/enum.SqlValue.html" title="enum common_sql::convert::SqlValue">Value</a>>,
|
|
},
|
|
ILike {
|
|
negated: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>,
|
|
any: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>,
|
|
expr: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>,
|
|
pattern: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>,
|
|
escape_char: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="enum" href="../convert/enum.SqlValue.html" title="enum common_sql::convert::SqlValue">Value</a>>,
|
|
},
|
|
SimilarTo {
|
|
negated: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>,
|
|
expr: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>,
|
|
pattern: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>,
|
|
escape_char: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="enum" href="../convert/enum.SqlValue.html" title="enum common_sql::convert::SqlValue">Value</a>>,
|
|
},
|
|
RLike {
|
|
negated: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>,
|
|
expr: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>,
|
|
pattern: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>,
|
|
regexp: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>,
|
|
},
|
|
AnyOp {
|
|
left: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>,
|
|
compare_op: <a class="enum" href="../convert/enum.BinaryOperator.html" title="enum common_sql::convert::BinaryOperator">BinaryOperator</a>,
|
|
right: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>,
|
|
is_some: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>,
|
|
},
|
|
AllOp {
|
|
left: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>,
|
|
compare_op: <a class="enum" href="../convert/enum.BinaryOperator.html" title="enum common_sql::convert::BinaryOperator">BinaryOperator</a>,
|
|
right: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>,
|
|
},
|
|
UnaryOp {
|
|
op: <a class="enum" href="../convert/enum.UnaryOperator.html" title="enum common_sql::convert::UnaryOperator">UnaryOperator</a>,
|
|
expr: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>,
|
|
},
|
|
Convert {
|
|
is_try: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>,
|
|
expr: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>,
|
|
data_type: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="enum" href="../convert/enum.DataType.html" title="enum common_sql::convert::DataType">DataType</a>>,
|
|
charset: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="../convert/struct.ObjectName.html" title="struct common_sql::convert::ObjectName">ObjectName</a>>,
|
|
target_before_value: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>,
|
|
styles: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>,
|
|
},
|
|
Cast {
|
|
kind: CastKind,
|
|
expr: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>,
|
|
data_type: <a class="enum" href="../convert/enum.DataType.html" title="enum common_sql::convert::DataType">DataType</a>,
|
|
format: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><CastFormat>,
|
|
},
|
|
AtTimeZone {
|
|
timestamp: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>,
|
|
time_zone: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>,
|
|
},
|
|
Extract {
|
|
field: DateTimeField,
|
|
syntax: ExtractSyntax,
|
|
expr: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>,
|
|
},
|
|
Ceil {
|
|
expr: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>,
|
|
field: CeilFloorKind,
|
|
},
|
|
Floor {
|
|
expr: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>,
|
|
field: CeilFloorKind,
|
|
},
|
|
Position {
|
|
expr: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>,
|
|
in: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>,
|
|
},
|
|
Substring {
|
|
expr: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>,
|
|
substring_from: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>>,
|
|
substring_for: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>>,
|
|
special: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>,
|
|
shorthand: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>,
|
|
},
|
|
Trim {
|
|
expr: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>,
|
|
trim_where: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><TrimWhereField>,
|
|
trim_what: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>>,
|
|
trim_characters: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>>,
|
|
},
|
|
Overlay {
|
|
expr: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>,
|
|
overlay_what: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>,
|
|
overlay_from: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>,
|
|
overlay_for: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>>,
|
|
},
|
|
Collate {
|
|
expr: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>,
|
|
collation: <a class="struct" href="../convert/struct.ObjectName.html" title="struct common_sql::convert::ObjectName">ObjectName</a>,
|
|
},
|
|
Nested(<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>),
|
|
Value(ValueWithSpan),
|
|
Prefixed {
|
|
prefix: <a class="struct" href="../convert/struct.Ident.html" title="struct common_sql::convert::Ident">Ident</a>,
|
|
value: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>,
|
|
},
|
|
TypedString {
|
|
data_type: <a class="enum" href="../convert/enum.DataType.html" title="enum common_sql::convert::DataType">DataType</a>,
|
|
value: ValueWithSpan,
|
|
},
|
|
Function(<a class="struct" href="../convert/struct.Function.html" title="struct common_sql::convert::Function">Function</a>),
|
|
Case {
|
|
case_token: AttachedToken,
|
|
end_token: AttachedToken,
|
|
operand: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>>,
|
|
conditions: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><CaseWhen>,
|
|
else_result: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>>,
|
|
},
|
|
Exists {
|
|
subquery: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><Query>,
|
|
negated: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>,
|
|
},
|
|
Subquery(<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><Query>),
|
|
GroupingSets(<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>>),
|
|
Cube(<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>>),
|
|
Rollup(<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>>),
|
|
Tuple(<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>),
|
|
Struct {
|
|
values: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>,
|
|
fields: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><StructField>,
|
|
},
|
|
Named {
|
|
expr: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>,
|
|
name: <a class="struct" href="../convert/struct.Ident.html" title="struct common_sql::convert::Ident">Ident</a>,
|
|
},
|
|
Dictionary(<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><DictionaryField>),
|
|
Map(Map),
|
|
Array(Array),
|
|
Interval(Interval),
|
|
MatchAgainst {
|
|
columns: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="struct" href="../convert/struct.ObjectName.html" title="struct common_sql::convert::ObjectName">ObjectName</a>>,
|
|
match_value: <a class="enum" href="../convert/enum.SqlValue.html" title="enum common_sql::convert::SqlValue">Value</a>,
|
|
opt_search_modifier: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><SearchModifier>,
|
|
},
|
|
Wildcard(AttachedToken),
|
|
QualifiedWildcard(<a class="struct" href="../convert/struct.ObjectName.html" title="struct common_sql::convert::ObjectName">ObjectName</a>, AttachedToken),
|
|
OuterJoin(<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>),
|
|
Prior(<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>),
|
|
Lambda(LambdaFunction),
|
|
MemberOf(MemberOf),
|
|
</details>}</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>An SQL expression of any type.</p>
|
|
<h2 id="semantics--type-checking"><a class="doc-anchor" href="#semantics--type-checking">§</a>Semantics / Type Checking</h2>
|
|
<p>The parser does not distinguish between expressions of different types
|
|
(e.g. boolean vs string). The caller is responsible for detecting and
|
|
validating types as necessary (for example <code>WHERE 1</code> vs <code>SELECT 1=1</code>)
|
|
See the <a href="https://github.com/apache/datafusion-sqlparser-rs/blob/main/README.md#syntax-vs-semantics">README.md</a> for more details.</p>
|
|
<h2 id="equality-and-hashing-does-not-include-source-locations"><a class="doc-anchor" href="#equality-and-hashing-does-not-include-source-locations">§</a>Equality and Hashing Does not Include Source Locations</h2>
|
|
<p>The <code>Expr</code> type implements <code>PartialEq</code> and <code>Eq</code> based on the semantic value
|
|
of the expression (not bitwise comparison). This means that <code>Expr</code> instances
|
|
that are semantically equivalent but have different spans (locations in the
|
|
source tree) will compare as equal.</p>
|
|
</div></details><h2 id="variants" class="variants section-header">Variants<a href="#variants" class="anchor">§</a></h2><div class="variants"><section id="variant.Identifier" class="variant"><a href="#variant.Identifier" class="anchor">§</a><h3 class="code-header">Identifier(<a class="struct" href="../convert/struct.Ident.html" title="struct common_sql::convert::Ident">Ident</a>)</h3></section><div class="docblock"><p>Identifier e.g. table name or column name</p>
|
|
</div><section id="variant.CompoundIdentifier" class="variant"><a href="#variant.CompoundIdentifier" class="anchor">§</a><h3 class="code-header">CompoundIdentifier(<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="struct" href="../convert/struct.Ident.html" title="struct common_sql::convert::Ident">Ident</a>>)</h3></section><div class="docblock"><p>Multi-part identifier, e.g. <code>table_alias.column</code> or <code>schema.table.col</code></p>
|
|
</div><section id="variant.CompoundFieldAccess" class="variant"><a href="#variant.CompoundFieldAccess" class="anchor">§</a><h3 class="code-header">CompoundFieldAccess</h3></section><div class="docblock"><p>Multi-part expression access.</p>
|
|
<p>This structure represents an access chain in structured / nested types
|
|
such as maps, arrays, and lists:</p>
|
|
<ul>
|
|
<li>Array
|
|
<ul>
|
|
<li>A 1-dim array <code>a[1]</code> will be represented like:
|
|
<code>CompoundFieldAccess(Ident('a'), vec![Subscript(1)]</code></li>
|
|
<li>A 2-dim array <code>a[1][2]</code> will be represented like:
|
|
<code>CompoundFieldAccess(Ident('a'), vec![Subscript(1), Subscript(2)]</code></li>
|
|
</ul>
|
|
</li>
|
|
<li>Map or Struct (Bracket-style)
|
|
<ul>
|
|
<li>A map <code>a['field1']</code> will be represented like:
|
|
<code>CompoundFieldAccess(Ident('a'), vec![Subscript('field')]</code></li>
|
|
<li>A 2-dim map <code>a['field1']['field2']</code> will be represented like:
|
|
<code>CompoundFieldAccess(Ident('a'), vec![Subscript('field1'), Subscript('field2')]</code></li>
|
|
</ul>
|
|
</li>
|
|
<li>Struct (Dot-style) (only effect when the chain contains both subscript and expr)
|
|
<ul>
|
|
<li>A struct access <code>a[field1].field2</code> will be represented like:
|
|
<code>CompoundFieldAccess(Ident('a'), vec![Subscript('field1'), Ident('field2')]</code></li>
|
|
</ul>
|
|
</li>
|
|
<li>If a struct access likes <code>a.field1.field2</code>, it will be represented by CompoundIdentifier([a, field1, field2])</li>
|
|
</ul>
|
|
</div><div class="sub-variant" id="variant.CompoundFieldAccess.fields"><h4>Fields</h4><div class="sub-variant-field"><span id="variant.CompoundFieldAccess.field.root" class="section-header"><a href="#variant.CompoundFieldAccess.field.root" class="anchor field">§</a><code>root: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>></code></span></div><div class="sub-variant-field"><span id="variant.CompoundFieldAccess.field.access_chain" class="section-header"><a href="#variant.CompoundFieldAccess.field.access_chain" class="anchor field">§</a><code>access_chain: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><AccessExpr></code></span></div></div><section id="variant.JsonAccess" class="variant"><a href="#variant.JsonAccess" class="anchor">§</a><h3 class="code-header">JsonAccess</h3></section><div class="docblock"><p>Access data nested in a value containing semi-structured data, such as
|
|
the <code>VARIANT</code> type on Snowflake. for example <code>src:customer[0].name</code>.</p>
|
|
<p>See <a href="https://docs.snowflake.com/en/user-guide/querying-semistructured">https://docs.snowflake.com/en/user-guide/querying-semistructured</a>.
|
|
See <a href="https://docs.databricks.com/en/sql/language-manual/functions/colonsign.html">https://docs.databricks.com/en/sql/language-manual/functions/colonsign.html</a>.</p>
|
|
</div><div class="sub-variant" id="variant.JsonAccess.fields"><h4>Fields</h4><div class="sub-variant-field"><span id="variant.JsonAccess.field.value" class="section-header"><a href="#variant.JsonAccess.field.value" class="anchor field">§</a><code>value: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>></code></span><div class="docblock"><p>The value being queried.</p>
|
|
</div></div><div class="sub-variant-field"><span id="variant.JsonAccess.field.path" class="section-header"><a href="#variant.JsonAccess.field.path" class="anchor field">§</a><code>path: JsonPath</code></span><div class="docblock"><p>The path to the data to extract.</p>
|
|
</div></div></div><section id="variant.IsFalse" class="variant"><a href="#variant.IsFalse" class="anchor">§</a><h3 class="code-header">IsFalse(<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>)</h3></section><div class="docblock"><p><code>IS FALSE</code> operator</p>
|
|
</div><section id="variant.IsNotFalse" class="variant"><a href="#variant.IsNotFalse" class="anchor">§</a><h3 class="code-header">IsNotFalse(<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>)</h3></section><div class="docblock"><p><code>IS NOT FALSE</code> operator</p>
|
|
</div><section id="variant.IsTrue" class="variant"><a href="#variant.IsTrue" class="anchor">§</a><h3 class="code-header">IsTrue(<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>)</h3></section><div class="docblock"><p><code>IS TRUE</code> operator</p>
|
|
</div><section id="variant.IsNotTrue" class="variant"><a href="#variant.IsNotTrue" class="anchor">§</a><h3 class="code-header">IsNotTrue(<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>)</h3></section><div class="docblock"><p><code>IS NOT TRUE</code> operator</p>
|
|
</div><section id="variant.IsNull" class="variant"><a href="#variant.IsNull" class="anchor">§</a><h3 class="code-header">IsNull(<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>)</h3></section><div class="docblock"><p><code>IS NULL</code> operator</p>
|
|
</div><section id="variant.IsNotNull" class="variant"><a href="#variant.IsNotNull" class="anchor">§</a><h3 class="code-header">IsNotNull(<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>)</h3></section><div class="docblock"><p><code>IS NOT NULL</code> operator</p>
|
|
</div><section id="variant.IsUnknown" class="variant"><a href="#variant.IsUnknown" class="anchor">§</a><h3 class="code-header">IsUnknown(<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>)</h3></section><div class="docblock"><p><code>IS UNKNOWN</code> operator</p>
|
|
</div><section id="variant.IsNotUnknown" class="variant"><a href="#variant.IsNotUnknown" class="anchor">§</a><h3 class="code-header">IsNotUnknown(<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>)</h3></section><div class="docblock"><p><code>IS NOT UNKNOWN</code> operator</p>
|
|
</div><section id="variant.IsDistinctFrom" class="variant"><a href="#variant.IsDistinctFrom" class="anchor">§</a><h3 class="code-header">IsDistinctFrom(<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>, <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>)</h3></section><div class="docblock"><p><code>IS DISTINCT FROM</code> operator</p>
|
|
</div><section id="variant.IsNotDistinctFrom" class="variant"><a href="#variant.IsNotDistinctFrom" class="anchor">§</a><h3 class="code-header">IsNotDistinctFrom(<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>, <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>)</h3></section><div class="docblock"><p><code>IS NOT DISTINCT FROM</code> operator</p>
|
|
</div><section id="variant.IsNormalized" class="variant"><a href="#variant.IsNormalized" class="anchor">§</a><h3 class="code-header">IsNormalized</h3></section><div class="docblock"><p><code><expr> IS [ NOT ] [ form ] NORMALIZED</code></p>
|
|
</div><div class="sub-variant" id="variant.IsNormalized.fields"><h4>Fields</h4><div class="sub-variant-field"><span id="variant.IsNormalized.field.expr" class="section-header"><a href="#variant.IsNormalized.field.expr" class="anchor field">§</a><code>expr: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>></code></span></div><div class="sub-variant-field"><span id="variant.IsNormalized.field.form" class="section-header"><a href="#variant.IsNormalized.field.form" class="anchor field">§</a><code>form: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><NormalizationForm></code></span></div><div class="sub-variant-field"><span id="variant.IsNormalized.field.negated" class="section-header"><a href="#variant.IsNormalized.field.negated" class="anchor field">§</a><code>negated: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></code></span></div></div><section id="variant.InList" class="variant"><a href="#variant.InList" class="anchor">§</a><h3 class="code-header">InList</h3></section><div class="docblock"><p><code>[ NOT ] IN (val1, val2, ...)</code></p>
|
|
</div><div class="sub-variant" id="variant.InList.fields"><h4>Fields</h4><div class="sub-variant-field"><span id="variant.InList.field.expr" class="section-header"><a href="#variant.InList.field.expr" class="anchor field">§</a><code>expr: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>></code></span></div><div class="sub-variant-field"><span id="variant.InList.field.list" class="section-header"><a href="#variant.InList.field.list" class="anchor field">§</a><code>list: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>></code></span></div><div class="sub-variant-field"><span id="variant.InList.field.negated" class="section-header"><a href="#variant.InList.field.negated" class="anchor field">§</a><code>negated: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></code></span></div></div><section id="variant.InSubquery" class="variant"><a href="#variant.InSubquery" class="anchor">§</a><h3 class="code-header">InSubquery</h3></section><div class="docblock"><p><code>[ NOT ] IN (SELECT ...)</code></p>
|
|
</div><div class="sub-variant" id="variant.InSubquery.fields"><h4>Fields</h4><div class="sub-variant-field"><span id="variant.InSubquery.field.expr" class="section-header"><a href="#variant.InSubquery.field.expr" class="anchor field">§</a><code>expr: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>></code></span></div><div class="sub-variant-field"><span id="variant.InSubquery.field.subquery" class="section-header"><a href="#variant.InSubquery.field.subquery" class="anchor field">§</a><code>subquery: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><Query></code></span></div><div class="sub-variant-field"><span id="variant.InSubquery.field.negated" class="section-header"><a href="#variant.InSubquery.field.negated" class="anchor field">§</a><code>negated: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></code></span></div></div><section id="variant.InUnnest" class="variant"><a href="#variant.InUnnest" class="anchor">§</a><h3 class="code-header">InUnnest</h3></section><div class="docblock"><p><code>[ NOT ] IN UNNEST(array_expression)</code></p>
|
|
</div><div class="sub-variant" id="variant.InUnnest.fields"><h4>Fields</h4><div class="sub-variant-field"><span id="variant.InUnnest.field.expr" class="section-header"><a href="#variant.InUnnest.field.expr" class="anchor field">§</a><code>expr: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>></code></span></div><div class="sub-variant-field"><span id="variant.InUnnest.field.array_expr" class="section-header"><a href="#variant.InUnnest.field.array_expr" class="anchor field">§</a><code>array_expr: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>></code></span></div><div class="sub-variant-field"><span id="variant.InUnnest.field.negated" class="section-header"><a href="#variant.InUnnest.field.negated" class="anchor field">§</a><code>negated: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></code></span></div></div><section id="variant.Between" class="variant"><a href="#variant.Between" class="anchor">§</a><h3 class="code-header">Between</h3></section><div class="docblock"><p><code><expr> [ NOT ] BETWEEN <low> AND <high></code></p>
|
|
</div><div class="sub-variant" id="variant.Between.fields"><h4>Fields</h4><div class="sub-variant-field"><span id="variant.Between.field.expr" class="section-header"><a href="#variant.Between.field.expr" class="anchor field">§</a><code>expr: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>></code></span></div><div class="sub-variant-field"><span id="variant.Between.field.negated" class="section-header"><a href="#variant.Between.field.negated" class="anchor field">§</a><code>negated: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></code></span></div><div class="sub-variant-field"><span id="variant.Between.field.low" class="section-header"><a href="#variant.Between.field.low" class="anchor field">§</a><code>low: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>></code></span></div><div class="sub-variant-field"><span id="variant.Between.field.high" class="section-header"><a href="#variant.Between.field.high" class="anchor field">§</a><code>high: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>></code></span></div></div><section id="variant.BinaryOp" class="variant"><a href="#variant.BinaryOp" class="anchor">§</a><h3 class="code-header">BinaryOp</h3></section><div class="docblock"><p>Binary operation e.g. <code>1 + 1</code> or <code>foo > bar</code></p>
|
|
</div><div class="sub-variant" id="variant.BinaryOp.fields"><h4>Fields</h4><div class="sub-variant-field"><span id="variant.BinaryOp.field.left" class="section-header"><a href="#variant.BinaryOp.field.left" class="anchor field">§</a><code>left: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>></code></span></div><div class="sub-variant-field"><span id="variant.BinaryOp.field.op" class="section-header"><a href="#variant.BinaryOp.field.op" class="anchor field">§</a><code>op: <a class="enum" href="../convert/enum.BinaryOperator.html" title="enum common_sql::convert::BinaryOperator">BinaryOperator</a></code></span></div><div class="sub-variant-field"><span id="variant.BinaryOp.field.right" class="section-header"><a href="#variant.BinaryOp.field.right" class="anchor field">§</a><code>right: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>></code></span></div></div><section id="variant.Like" class="variant"><a href="#variant.Like" class="anchor">§</a><h3 class="code-header">Like</h3></section><div class="docblock"><p><code>[NOT] LIKE <pattern> [ESCAPE <escape_character>]</code></p>
|
|
</div><div class="sub-variant" id="variant.Like.fields"><h4>Fields</h4><div class="sub-variant-field"><span id="variant.Like.field.negated" class="section-header"><a href="#variant.Like.field.negated" class="anchor field">§</a><code>negated: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></code></span></div><div class="sub-variant-field"><span id="variant.Like.field.any" class="section-header"><a href="#variant.Like.field.any" class="anchor field">§</a><code>any: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></code></span></div><div class="sub-variant-field"><span id="variant.Like.field.expr" class="section-header"><a href="#variant.Like.field.expr" class="anchor field">§</a><code>expr: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>></code></span></div><div class="sub-variant-field"><span id="variant.Like.field.pattern" class="section-header"><a href="#variant.Like.field.pattern" class="anchor field">§</a><code>pattern: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>></code></span></div><div class="sub-variant-field"><span id="variant.Like.field.escape_char" class="section-header"><a href="#variant.Like.field.escape_char" class="anchor field">§</a><code>escape_char: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="enum" href="../convert/enum.SqlValue.html" title="enum common_sql::convert::SqlValue">Value</a>></code></span></div></div><section id="variant.ILike" class="variant"><a href="#variant.ILike" class="anchor">§</a><h3 class="code-header">ILike</h3></section><div class="docblock"><p><code>ILIKE</code> (case-insensitive <code>LIKE</code>)</p>
|
|
</div><div class="sub-variant" id="variant.ILike.fields"><h4>Fields</h4><div class="sub-variant-field"><span id="variant.ILike.field.negated" class="section-header"><a href="#variant.ILike.field.negated" class="anchor field">§</a><code>negated: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></code></span></div><div class="sub-variant-field"><span id="variant.ILike.field.any" class="section-header"><a href="#variant.ILike.field.any" class="anchor field">§</a><code>any: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></code></span></div><div class="sub-variant-field"><span id="variant.ILike.field.expr" class="section-header"><a href="#variant.ILike.field.expr" class="anchor field">§</a><code>expr: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>></code></span></div><div class="sub-variant-field"><span id="variant.ILike.field.pattern" class="section-header"><a href="#variant.ILike.field.pattern" class="anchor field">§</a><code>pattern: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>></code></span></div><div class="sub-variant-field"><span id="variant.ILike.field.escape_char" class="section-header"><a href="#variant.ILike.field.escape_char" class="anchor field">§</a><code>escape_char: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="enum" href="../convert/enum.SqlValue.html" title="enum common_sql::convert::SqlValue">Value</a>></code></span></div></div><section id="variant.SimilarTo" class="variant"><a href="#variant.SimilarTo" class="anchor">§</a><h3 class="code-header">SimilarTo</h3></section><div class="docblock"><p>SIMILAR TO regex</p>
|
|
</div><div class="sub-variant" id="variant.SimilarTo.fields"><h4>Fields</h4><div class="sub-variant-field"><span id="variant.SimilarTo.field.negated" class="section-header"><a href="#variant.SimilarTo.field.negated" class="anchor field">§</a><code>negated: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></code></span></div><div class="sub-variant-field"><span id="variant.SimilarTo.field.expr" class="section-header"><a href="#variant.SimilarTo.field.expr" class="anchor field">§</a><code>expr: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>></code></span></div><div class="sub-variant-field"><span id="variant.SimilarTo.field.pattern" class="section-header"><a href="#variant.SimilarTo.field.pattern" class="anchor field">§</a><code>pattern: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>></code></span></div><div class="sub-variant-field"><span id="variant.SimilarTo.field.escape_char" class="section-header"><a href="#variant.SimilarTo.field.escape_char" class="anchor field">§</a><code>escape_char: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="enum" href="../convert/enum.SqlValue.html" title="enum common_sql::convert::SqlValue">Value</a>></code></span></div></div><section id="variant.RLike" class="variant"><a href="#variant.RLike" class="anchor">§</a><h3 class="code-header">RLike</h3></section><div class="docblock"><p>MySQL: RLIKE regex or REGEXP regex</p>
|
|
</div><div class="sub-variant" id="variant.RLike.fields"><h4>Fields</h4><div class="sub-variant-field"><span id="variant.RLike.field.negated" class="section-header"><a href="#variant.RLike.field.negated" class="anchor field">§</a><code>negated: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></code></span></div><div class="sub-variant-field"><span id="variant.RLike.field.expr" class="section-header"><a href="#variant.RLike.field.expr" class="anchor field">§</a><code>expr: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>></code></span></div><div class="sub-variant-field"><span id="variant.RLike.field.pattern" class="section-header"><a href="#variant.RLike.field.pattern" class="anchor field">§</a><code>pattern: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>></code></span></div><div class="sub-variant-field"><span id="variant.RLike.field.regexp" class="section-header"><a href="#variant.RLike.field.regexp" class="anchor field">§</a><code>regexp: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></code></span></div></div><section id="variant.AnyOp" class="variant"><a href="#variant.AnyOp" class="anchor">§</a><h3 class="code-header">AnyOp</h3></section><div class="docblock"><p><code>ANY</code> operation e.g. <code>foo > ANY(bar)</code>, comparison operator is one of <code>[=, >, <, =>, =<, !=]</code>
|
|
<a href="https://docs.snowflake.com/en/sql-reference/operators-subquery#all-any">https://docs.snowflake.com/en/sql-reference/operators-subquery#all-any</a></p>
|
|
</div><div class="sub-variant" id="variant.AnyOp.fields"><h4>Fields</h4><div class="sub-variant-field"><span id="variant.AnyOp.field.left" class="section-header"><a href="#variant.AnyOp.field.left" class="anchor field">§</a><code>left: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>></code></span></div><div class="sub-variant-field"><span id="variant.AnyOp.field.compare_op" class="section-header"><a href="#variant.AnyOp.field.compare_op" class="anchor field">§</a><code>compare_op: <a class="enum" href="../convert/enum.BinaryOperator.html" title="enum common_sql::convert::BinaryOperator">BinaryOperator</a></code></span></div><div class="sub-variant-field"><span id="variant.AnyOp.field.right" class="section-header"><a href="#variant.AnyOp.field.right" class="anchor field">§</a><code>right: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>></code></span></div><div class="sub-variant-field"><span id="variant.AnyOp.field.is_some" class="section-header"><a href="#variant.AnyOp.field.is_some" class="anchor field">§</a><code>is_some: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></code></span></div></div><section id="variant.AllOp" class="variant"><a href="#variant.AllOp" class="anchor">§</a><h3 class="code-header">AllOp</h3></section><div class="docblock"><p><code>ALL</code> operation e.g. <code>foo > ALL(bar)</code>, comparison operator is one of <code>[=, >, <, =>, =<, !=]</code>
|
|
<a href="https://docs.snowflake.com/en/sql-reference/operators-subquery#all-any">https://docs.snowflake.com/en/sql-reference/operators-subquery#all-any</a></p>
|
|
</div><div class="sub-variant" id="variant.AllOp.fields"><h4>Fields</h4><div class="sub-variant-field"><span id="variant.AllOp.field.left" class="section-header"><a href="#variant.AllOp.field.left" class="anchor field">§</a><code>left: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>></code></span></div><div class="sub-variant-field"><span id="variant.AllOp.field.compare_op" class="section-header"><a href="#variant.AllOp.field.compare_op" class="anchor field">§</a><code>compare_op: <a class="enum" href="../convert/enum.BinaryOperator.html" title="enum common_sql::convert::BinaryOperator">BinaryOperator</a></code></span></div><div class="sub-variant-field"><span id="variant.AllOp.field.right" class="section-header"><a href="#variant.AllOp.field.right" class="anchor field">§</a><code>right: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>></code></span></div></div><section id="variant.UnaryOp" class="variant"><a href="#variant.UnaryOp" class="anchor">§</a><h3 class="code-header">UnaryOp</h3></section><div class="docblock"><p>Unary operation e.g. <code>NOT foo</code></p>
|
|
</div><div class="sub-variant" id="variant.UnaryOp.fields"><h4>Fields</h4><div class="sub-variant-field"><span id="variant.UnaryOp.field.op" class="section-header"><a href="#variant.UnaryOp.field.op" class="anchor field">§</a><code>op: <a class="enum" href="../convert/enum.UnaryOperator.html" title="enum common_sql::convert::UnaryOperator">UnaryOperator</a></code></span></div><div class="sub-variant-field"><span id="variant.UnaryOp.field.expr" class="section-header"><a href="#variant.UnaryOp.field.expr" class="anchor field">§</a><code>expr: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>></code></span></div></div><section id="variant.Convert" class="variant"><a href="#variant.Convert" class="anchor">§</a><h3 class="code-header">Convert</h3></section><div class="docblock"><p>CONVERT a value to a different data type or character encoding. e.g. <code>CONVERT(foo USING utf8mb4)</code></p>
|
|
</div><div class="sub-variant" id="variant.Convert.fields"><h4>Fields</h4><div class="sub-variant-field"><span id="variant.Convert.field.is_try" class="section-header"><a href="#variant.Convert.field.is_try" class="anchor field">§</a><code>is_try: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></code></span><div class="docblock"><p>CONVERT (false) or TRY_CONVERT (true)
|
|
<a href="https://learn.microsoft.com/en-us/sql/t-sql/functions/try-convert-transact-sql?view=sql-server-ver16">https://learn.microsoft.com/en-us/sql/t-sql/functions/try-convert-transact-sql?view=sql-server-ver16</a></p>
|
|
</div></div><div class="sub-variant-field"><span id="variant.Convert.field.expr" class="section-header"><a href="#variant.Convert.field.expr" class="anchor field">§</a><code>expr: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>></code></span><div class="docblock"><p>The expression to convert</p>
|
|
</div></div><div class="sub-variant-field"><span id="variant.Convert.field.data_type" class="section-header"><a href="#variant.Convert.field.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="enum" href="../convert/enum.DataType.html" title="enum common_sql::convert::DataType">DataType</a>></code></span><div class="docblock"><p>The target data type</p>
|
|
</div></div><div class="sub-variant-field"><span id="variant.Convert.field.charset" class="section-header"><a href="#variant.Convert.field.charset" class="anchor field">§</a><code>charset: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="../convert/struct.ObjectName.html" title="struct common_sql::convert::ObjectName">ObjectName</a>></code></span><div class="docblock"><p>The target character encoding</p>
|
|
</div></div><div class="sub-variant-field"><span id="variant.Convert.field.target_before_value" class="section-header"><a href="#variant.Convert.field.target_before_value" class="anchor field">§</a><code>target_before_value: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></code></span><div class="docblock"><p>whether the target comes before the expr (MSSQL syntax)</p>
|
|
</div></div><div class="sub-variant-field"><span id="variant.Convert.field.styles" class="section-header"><a href="#variant.Convert.field.styles" class="anchor field">§</a><code>styles: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>></code></span><div class="docblock"><p>How to translate the expression.</p>
|
|
</div></div></div><section id="variant.Cast" class="variant"><a href="#variant.Cast" class="anchor">§</a><h3 class="code-header">Cast</h3></section><div class="docblock"><p><code>CAST</code> an expression to a different data type e.g. <code>CAST(foo AS VARCHAR(123))</code></p>
|
|
</div><div class="sub-variant" id="variant.Cast.fields"><h4>Fields</h4><div class="sub-variant-field"><span id="variant.Cast.field.kind" class="section-header"><a href="#variant.Cast.field.kind" class="anchor field">§</a><code>kind: CastKind</code></span></div><div class="sub-variant-field"><span id="variant.Cast.field.expr" class="section-header"><a href="#variant.Cast.field.expr" class="anchor field">§</a><code>expr: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>></code></span></div><div class="sub-variant-field"><span id="variant.Cast.field.data_type" class="section-header"><a href="#variant.Cast.field.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../convert/enum.DataType.html" title="enum common_sql::convert::DataType">DataType</a></code></span></div><div class="sub-variant-field"><span id="variant.Cast.field.format" class="section-header"><a href="#variant.Cast.field.format" class="anchor field">§</a><code>format: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><CastFormat></code></span><div class="docblock"><p>Optional CAST(string_expression AS type FORMAT format_string_expression) as used by <a href="https://cloud.google.com/bigquery/docs/reference/standard-sql/format-elements#formatting_syntax">BigQuery</a></p>
|
|
</div></div></div><section id="variant.AtTimeZone" class="variant"><a href="#variant.AtTimeZone" class="anchor">§</a><h3 class="code-header">AtTimeZone</h3></section><div class="docblock"><p>AT a timestamp to a different timezone e.g. <code>FROM_UNIXTIME(0) AT TIME ZONE 'UTC-06:00'</code></p>
|
|
</div><div class="sub-variant" id="variant.AtTimeZone.fields"><h4>Fields</h4><div class="sub-variant-field"><span id="variant.AtTimeZone.field.timestamp" class="section-header"><a href="#variant.AtTimeZone.field.timestamp" class="anchor field">§</a><code>timestamp: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>></code></span></div><div class="sub-variant-field"><span id="variant.AtTimeZone.field.time_zone" class="section-header"><a href="#variant.AtTimeZone.field.time_zone" class="anchor field">§</a><code>time_zone: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>></code></span></div></div><section id="variant.Extract" class="variant"><a href="#variant.Extract" class="anchor">§</a><h3 class="code-header">Extract</h3></section><div class="docblock"><p>Extract a field from a timestamp e.g. <code>EXTRACT(MONTH FROM foo)</code>
|
|
Or <code>EXTRACT(MONTH, foo)</code></p>
|
|
<p>Syntax:</p>
|
|
<div class="example-wrap"><pre class="language-sql"><code>EXTRACT(DateTimeField FROM <expr>) | EXTRACT(DateTimeField, <expr>)</code></pre></div></div><div class="sub-variant" id="variant.Extract.fields"><h4>Fields</h4><div class="sub-variant-field"><span id="variant.Extract.field.field" class="section-header"><a href="#variant.Extract.field.field" class="anchor field">§</a><code>field: DateTimeField</code></span></div><div class="sub-variant-field"><span id="variant.Extract.field.syntax" class="section-header"><a href="#variant.Extract.field.syntax" class="anchor field">§</a><code>syntax: ExtractSyntax</code></span></div><div class="sub-variant-field"><span id="variant.Extract.field.expr" class="section-header"><a href="#variant.Extract.field.expr" class="anchor field">§</a><code>expr: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>></code></span></div></div><section id="variant.Ceil" class="variant"><a href="#variant.Ceil" class="anchor">§</a><h3 class="code-header">Ceil</h3></section><div class="docblock"><div class="example-wrap"><pre class="language-sql"><code>CEIL(<expr> [TO DateTimeField])</code></pre></div><div class="example-wrap"><pre class="language-sql"><code>CEIL( <input_expr> [, <scale_expr> ] )</code></pre></div></div><div class="sub-variant" id="variant.Ceil.fields"><h4>Fields</h4><div class="sub-variant-field"><span id="variant.Ceil.field.expr" class="section-header"><a href="#variant.Ceil.field.expr" class="anchor field">§</a><code>expr: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>></code></span></div><div class="sub-variant-field"><span id="variant.Ceil.field.field" class="section-header"><a href="#variant.Ceil.field.field" class="anchor field">§</a><code>field: CeilFloorKind</code></span></div></div><section id="variant.Floor" class="variant"><a href="#variant.Floor" class="anchor">§</a><h3 class="code-header">Floor</h3></section><div class="docblock"><div class="example-wrap"><pre class="language-sql"><code>FLOOR(<expr> [TO DateTimeField])</code></pre></div><div class="example-wrap"><pre class="language-sql"><code>FLOOR( <input_expr> [, <scale_expr> ] )</code></pre></div></div><div class="sub-variant" id="variant.Floor.fields"><h4>Fields</h4><div class="sub-variant-field"><span id="variant.Floor.field.expr" class="section-header"><a href="#variant.Floor.field.expr" class="anchor field">§</a><code>expr: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>></code></span></div><div class="sub-variant-field"><span id="variant.Floor.field.field" class="section-header"><a href="#variant.Floor.field.field" class="anchor field">§</a><code>field: CeilFloorKind</code></span></div></div><section id="variant.Position" class="variant"><a href="#variant.Position" class="anchor">§</a><h3 class="code-header">Position</h3></section><div class="docblock"><div class="example-wrap"><pre class="language-sql"><code>POSITION(<expr> in <expr>)</code></pre></div></div><div class="sub-variant" id="variant.Position.fields"><h4>Fields</h4><div class="sub-variant-field"><span id="variant.Position.field.expr" class="section-header"><a href="#variant.Position.field.expr" class="anchor field">§</a><code>expr: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>></code></span></div><div class="sub-variant-field"><span id="variant.Position.field.in" class="section-header"><a href="#variant.Position.field.in" class="anchor field">§</a><code>in: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>></code></span></div></div><section id="variant.Substring" class="variant"><a href="#variant.Substring" class="anchor">§</a><h3 class="code-header">Substring</h3></section><div class="docblock"><div class="example-wrap"><pre class="language-sql"><code>SUBSTRING(<expr> [FROM <expr>] [FOR <expr>])</code></pre></div>
|
|
<p>or</p>
|
|
<div class="example-wrap"><pre class="language-sql"><code>SUBSTRING(<expr>, <expr>, <expr>)</code></pre></div></div><div class="sub-variant" id="variant.Substring.fields"><h4>Fields</h4><div class="sub-variant-field"><span id="variant.Substring.field.expr" class="section-header"><a href="#variant.Substring.field.expr" class="anchor field">§</a><code>expr: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>></code></span></div><div class="sub-variant-field"><span id="variant.Substring.field.substring_from" class="section-header"><a href="#variant.Substring.field.substring_from" class="anchor field">§</a><code>substring_from: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>></code></span></div><div class="sub-variant-field"><span id="variant.Substring.field.substring_for" class="section-header"><a href="#variant.Substring.field.substring_for" class="anchor field">§</a><code>substring_for: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>></code></span></div><div class="sub-variant-field"><span id="variant.Substring.field.special" class="section-header"><a href="#variant.Substring.field.special" class="anchor field">§</a><code>special: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></code></span><div class="docblock"><p>false if the expression is represented using the <code>SUBSTRING(expr [FROM start] [FOR len])</code> syntax
|
|
true if the expression is represented using the <code>SUBSTRING(expr, start, len)</code> syntax
|
|
This flag is used for formatting.</p>
|
|
</div></div><div class="sub-variant-field"><span id="variant.Substring.field.shorthand" class="section-header"><a href="#variant.Substring.field.shorthand" class="anchor field">§</a><code>shorthand: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></code></span><div class="docblock"><p>true if the expression is represented using the <code>SUBSTR</code> shorthand
|
|
This flag is used for formatting.</p>
|
|
</div></div></div><section id="variant.Trim" class="variant"><a href="#variant.Trim" class="anchor">§</a><h3 class="code-header">Trim</h3></section><div class="docblock"><div class="example-wrap"><pre class="language-sql"><code>TRIM([BOTH | LEADING | TRAILING] [<expr> FROM] <expr>)
|
|
TRIM(<expr>)
|
|
TRIM(<expr>, [, characters]) -- only Snowflake or Bigquery</code></pre></div></div><div class="sub-variant" id="variant.Trim.fields"><h4>Fields</h4><div class="sub-variant-field"><span id="variant.Trim.field.expr" class="section-header"><a href="#variant.Trim.field.expr" class="anchor field">§</a><code>expr: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>></code></span></div><div class="sub-variant-field"><span id="variant.Trim.field.trim_where" class="section-header"><a href="#variant.Trim.field.trim_where" class="anchor field">§</a><code>trim_where: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><TrimWhereField></code></span></div><div class="sub-variant-field"><span id="variant.Trim.field.trim_what" class="section-header"><a href="#variant.Trim.field.trim_what" class="anchor field">§</a><code>trim_what: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>></code></span></div><div class="sub-variant-field"><span id="variant.Trim.field.trim_characters" class="section-header"><a href="#variant.Trim.field.trim_characters" class="anchor field">§</a><code>trim_characters: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>></code></span></div></div><section id="variant.Overlay" class="variant"><a href="#variant.Overlay" class="anchor">§</a><h3 class="code-header">Overlay</h3></section><div class="docblock"><div class="example-wrap"><pre class="language-sql"><code>OVERLAY(<expr> PLACING <expr> FROM <expr>[ FOR <expr> ]</code></pre></div></div><div class="sub-variant" id="variant.Overlay.fields"><h4>Fields</h4><div class="sub-variant-field"><span id="variant.Overlay.field.expr" class="section-header"><a href="#variant.Overlay.field.expr" class="anchor field">§</a><code>expr: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>></code></span></div><div class="sub-variant-field"><span id="variant.Overlay.field.overlay_what" class="section-header"><a href="#variant.Overlay.field.overlay_what" class="anchor field">§</a><code>overlay_what: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>></code></span></div><div class="sub-variant-field"><span id="variant.Overlay.field.overlay_from" class="section-header"><a href="#variant.Overlay.field.overlay_from" class="anchor field">§</a><code>overlay_from: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>></code></span></div><div class="sub-variant-field"><span id="variant.Overlay.field.overlay_for" class="section-header"><a href="#variant.Overlay.field.overlay_for" class="anchor field">§</a><code>overlay_for: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>></code></span></div></div><section id="variant.Collate" class="variant"><a href="#variant.Collate" class="anchor">§</a><h3 class="code-header">Collate</h3></section><div class="docblock"><p><code>expr COLLATE collation</code></p>
|
|
</div><div class="sub-variant" id="variant.Collate.fields"><h4>Fields</h4><div class="sub-variant-field"><span id="variant.Collate.field.expr" class="section-header"><a href="#variant.Collate.field.expr" class="anchor field">§</a><code>expr: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>></code></span></div><div class="sub-variant-field"><span id="variant.Collate.field.collation" class="section-header"><a href="#variant.Collate.field.collation" class="anchor field">§</a><code>collation: <a class="struct" href="../convert/struct.ObjectName.html" title="struct common_sql::convert::ObjectName">ObjectName</a></code></span></div></div><section id="variant.Nested" class="variant"><a href="#variant.Nested" class="anchor">§</a><h3 class="code-header">Nested(<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>)</h3></section><div class="docblock"><p>Nested expression e.g. <code>(foo > bar)</code> or <code>(1)</code></p>
|
|
</div><section id="variant.Value" class="variant"><a href="#variant.Value" class="anchor">§</a><h3 class="code-header">Value(ValueWithSpan)</h3></section><div class="docblock"><p>A literal value, such as string, number, date or NULL</p>
|
|
</div><section id="variant.Prefixed" class="variant"><a href="#variant.Prefixed" class="anchor">§</a><h3 class="code-header">Prefixed</h3></section><div class="docblock"><p>Prefixed expression, e.g. introducer strings, projection prefix
|
|
<a href="https://dev.mysql.com/doc/refman/8.0/en/charset-introducer.html">https://dev.mysql.com/doc/refman/8.0/en/charset-introducer.html</a>
|
|
<a href="https://docs.snowflake.com/en/sql-reference/constructs/connect-by">https://docs.snowflake.com/en/sql-reference/constructs/connect-by</a></p>
|
|
</div><div class="sub-variant" id="variant.Prefixed.fields"><h4>Fields</h4><div class="sub-variant-field"><span id="variant.Prefixed.field.prefix" class="section-header"><a href="#variant.Prefixed.field.prefix" class="anchor field">§</a><code>prefix: <a class="struct" href="../convert/struct.Ident.html" title="struct common_sql::convert::Ident">Ident</a></code></span></div><div class="sub-variant-field"><span id="variant.Prefixed.field.value" class="section-header"><a href="#variant.Prefixed.field.value" class="anchor field">§</a><code>value: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>></code></span><div class="docblock"><p>The value of the constant.
|
|
Hint: you can unwrap the string value using <code>value.into_string()</code>.</p>
|
|
</div></div></div><section id="variant.TypedString" class="variant"><a href="#variant.TypedString" class="anchor">§</a><h3 class="code-header">TypedString</h3></section><div class="docblock"><p>A constant of form <code><data_type> 'value'</code>.
|
|
This can represent ANSI SQL <code>DATE</code>, <code>TIME</code>, and <code>TIMESTAMP</code> literals (such as <code>DATE '2020-01-01'</code>),
|
|
as well as constants of other types (a non-standard PostgreSQL extension).</p>
|
|
</div><div class="sub-variant" id="variant.TypedString.fields"><h4>Fields</h4><div class="sub-variant-field"><span id="variant.TypedString.field.data_type" class="section-header"><a href="#variant.TypedString.field.data_type" class="anchor field">§</a><code>data_type: <a class="enum" href="../convert/enum.DataType.html" title="enum common_sql::convert::DataType">DataType</a></code></span></div><div class="sub-variant-field"><span id="variant.TypedString.field.value" class="section-header"><a href="#variant.TypedString.field.value" class="anchor field">§</a><code>value: ValueWithSpan</code></span><div class="docblock"><p>The value of the constant.
|
|
Hint: you can unwrap the string value using <code>value.into_string()</code>.</p>
|
|
</div></div></div><section id="variant.Function" class="variant"><a href="#variant.Function" class="anchor">§</a><h3 class="code-header">Function(<a class="struct" href="../convert/struct.Function.html" title="struct common_sql::convert::Function">Function</a>)</h3></section><div class="docblock"><p>Scalar function call e.g. <code>LEFT(foo, 5)</code></p>
|
|
</div><section id="variant.Case" class="variant"><a href="#variant.Case" class="anchor">§</a><h3 class="code-header">Case</h3></section><div class="docblock"><p><code>CASE [<operand>] WHEN <condition> THEN <result> ... [ELSE <result>] END</code></p>
|
|
<p>Note we only recognize a complete single expression as <code><condition></code>,
|
|
not <code>< 0</code> nor <code>1, 2, 3</code> as allowed in a <code><simple when clause></code> per
|
|
<a href="https://jakewheat.github.io/sql-overview/sql-2011-foundation-grammar.html#simple-when-clause">https://jakewheat.github.io/sql-overview/sql-2011-foundation-grammar.html#simple-when-clause</a></p>
|
|
</div><div class="sub-variant" id="variant.Case.fields"><h4>Fields</h4><div class="sub-variant-field"><span id="variant.Case.field.case_token" class="section-header"><a href="#variant.Case.field.case_token" class="anchor field">§</a><code>case_token: AttachedToken</code></span></div><div class="sub-variant-field"><span id="variant.Case.field.end_token" class="section-header"><a href="#variant.Case.field.end_token" class="anchor field">§</a><code>end_token: AttachedToken</code></span></div><div class="sub-variant-field"><span id="variant.Case.field.operand" class="section-header"><a href="#variant.Case.field.operand" class="anchor field">§</a><code>operand: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>></code></span></div><div class="sub-variant-field"><span id="variant.Case.field.conditions" class="section-header"><a href="#variant.Case.field.conditions" class="anchor field">§</a><code>conditions: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><CaseWhen></code></span></div><div class="sub-variant-field"><span id="variant.Case.field.else_result" class="section-header"><a href="#variant.Case.field.else_result" class="anchor field">§</a><code>else_result: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>></code></span></div></div><section id="variant.Exists" class="variant"><a href="#variant.Exists" class="anchor">§</a><h3 class="code-header">Exists</h3></section><div class="docblock"><p>An exists expression <code>[ NOT ] EXISTS(SELECT ...)</code>, used in expressions like
|
|
<code>WHERE [ NOT ] EXISTS (SELECT ...)</code>.</p>
|
|
</div><div class="sub-variant" id="variant.Exists.fields"><h4>Fields</h4><div class="sub-variant-field"><span id="variant.Exists.field.subquery" class="section-header"><a href="#variant.Exists.field.subquery" class="anchor field">§</a><code>subquery: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><Query></code></span></div><div class="sub-variant-field"><span id="variant.Exists.field.negated" class="section-header"><a href="#variant.Exists.field.negated" class="anchor field">§</a><code>negated: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></code></span></div></div><section id="variant.Subquery" class="variant"><a href="#variant.Subquery" class="anchor">§</a><h3 class="code-header">Subquery(<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><Query>)</h3></section><div class="docblock"><p>A parenthesized subquery <code>(SELECT ...)</code>, used in expression like
|
|
<code>SELECT (subquery) AS x</code> or <code>WHERE (subquery) = x</code></p>
|
|
</div><section id="variant.GroupingSets" class="variant"><a href="#variant.GroupingSets" class="anchor">§</a><h3 class="code-header">GroupingSets(<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>>)</h3></section><div class="docblock"><p>The <code>GROUPING SETS</code> expr.</p>
|
|
</div><section id="variant.Cube" class="variant"><a href="#variant.Cube" class="anchor">§</a><h3 class="code-header">Cube(<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>>)</h3></section><div class="docblock"><p>The <code>CUBE</code> expr.</p>
|
|
</div><section id="variant.Rollup" class="variant"><a href="#variant.Rollup" class="anchor">§</a><h3 class="code-header">Rollup(<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>>)</h3></section><div class="docblock"><p>The <code>ROLLUP</code> expr.</p>
|
|
</div><section id="variant.Tuple" class="variant"><a href="#variant.Tuple" class="anchor">§</a><h3 class="code-header">Tuple(<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>)</h3></section><div class="docblock"><p>ROW / TUPLE a single value, such as <code>SELECT (1, 2)</code></p>
|
|
</div><section id="variant.Struct" class="variant"><a href="#variant.Struct" class="anchor">§</a><h3 class="code-header">Struct</h3></section><div class="docblock"><p><code>Struct</code> literal expression
|
|
Syntax:</p>
|
|
<div class="example-wrap"><pre class="language-sql"><code>STRUCT<[field_name] field_type, ...>( expr1 [, ... ])
|
|
|
|
[BigQuery](https://cloud.google.com/bigquery/docs/reference/standard-sql/data-types#struct_type)
|
|
[Databricks](https://docs.databricks.com/en/sql/language-manual/functions/struct.html)</code></pre></div></div><div class="sub-variant" id="variant.Struct.fields"><h4>Fields</h4><div class="sub-variant-field"><span id="variant.Struct.field.values" class="section-header"><a href="#variant.Struct.field.values" class="anchor field">§</a><code>values: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>></code></span><div class="docblock"><p>Struct values.</p>
|
|
</div></div><div class="sub-variant-field"><span id="variant.Struct.field.fields" class="section-header"><a href="#variant.Struct.field.fields" class="anchor field">§</a><code>fields: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><StructField></code></span><div class="docblock"><p>Struct field definitions.</p>
|
|
</div></div></div><section id="variant.Named" class="variant"><a href="#variant.Named" class="anchor">§</a><h3 class="code-header">Named</h3></section><div class="docblock"><p><code>BigQuery</code> specific: An named expression in a typeless struct <a href="https://cloud.google.com/bigquery/docs/reference/standard-sql/data-types#struct_type">1</a></p>
|
|
<p>Syntax</p>
|
|
<div class="example-wrap"><pre class="language-sql"><code>1 AS A</code></pre></div></div><div class="sub-variant" id="variant.Named.fields"><h4>Fields</h4><div class="sub-variant-field"><span id="variant.Named.field.expr" class="section-header"><a href="#variant.Named.field.expr" class="anchor field">§</a><code>expr: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>></code></span></div><div class="sub-variant-field"><span id="variant.Named.field.name" class="section-header"><a href="#variant.Named.field.name" class="anchor field">§</a><code>name: <a class="struct" href="../convert/struct.Ident.html" title="struct common_sql::convert::Ident">Ident</a></code></span></div></div><section id="variant.Dictionary" class="variant"><a href="#variant.Dictionary" class="anchor">§</a><h3 class="code-header">Dictionary(<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><DictionaryField>)</h3></section><div class="docblock"><p><code>DuckDB</code> specific <code>Struct</code> literal expression <a href="https://duckdb.org/docs/sql/data_types/struct#creating-structs">1</a></p>
|
|
<p>Syntax:</p>
|
|
<div class="example-wrap"><pre class="language-sql"><code>syntax: {'field_name': expr1[, ... ]}</code></pre></div></div><section id="variant.Map" class="variant"><a href="#variant.Map" class="anchor">§</a><h3 class="code-header">Map(Map)</h3></section><div class="docblock"><p><code>DuckDB</code> specific <code>Map</code> literal expression <a href="https://duckdb.org/docs/sql/data_types/map#creating-maps">1</a></p>
|
|
<p>Syntax:</p>
|
|
<div class="example-wrap"><pre class="language-sql"><code>syntax: Map {key1: value1[, ... ]}</code></pre></div></div><section id="variant.Array" class="variant"><a href="#variant.Array" class="anchor">§</a><h3 class="code-header">Array(Array)</h3></section><div class="docblock"><p>An array expression e.g. <code>ARRAY[1, 2]</code></p>
|
|
</div><section id="variant.Interval" class="variant"><a href="#variant.Interval" class="anchor">§</a><h3 class="code-header">Interval(Interval)</h3></section><div class="docblock"><p>An interval expression e.g. <code>INTERVAL '1' YEAR</code></p>
|
|
</div><section id="variant.MatchAgainst" class="variant"><a href="#variant.MatchAgainst" class="anchor">§</a><h3 class="code-header">MatchAgainst</h3></section><div class="docblock"><p><code>MySQL</code> specific text search function <a href="https://dev.mysql.com/doc/refman/8.0/en/fulltext-search.html#function_match">(1)</a>.</p>
|
|
<p>Syntax:</p>
|
|
<div class="example-wrap"><pre class="language-sql"><code>MATCH (<col>, <col>, ...) AGAINST (<expr> [<search modifier>])
|
|
|
|
<col> = CompoundIdentifier
|
|
<expr> = String literal</code></pre></div></div><div class="sub-variant" id="variant.MatchAgainst.fields"><h4>Fields</h4><div class="sub-variant-field"><span id="variant.MatchAgainst.field.columns" class="section-header"><a href="#variant.MatchAgainst.field.columns" class="anchor field">§</a><code>columns: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="struct" href="../convert/struct.ObjectName.html" title="struct common_sql::convert::ObjectName">ObjectName</a>></code></span><div class="docblock"><p><code>(<col>, <col>, ...)</code>.</p>
|
|
</div></div><div class="sub-variant-field"><span id="variant.MatchAgainst.field.match_value" class="section-header"><a href="#variant.MatchAgainst.field.match_value" class="anchor field">§</a><code>match_value: <a class="enum" href="../convert/enum.SqlValue.html" title="enum common_sql::convert::SqlValue">Value</a></code></span><div class="docblock"><p><code><expr></code>.</p>
|
|
</div></div><div class="sub-variant-field"><span id="variant.MatchAgainst.field.opt_search_modifier" class="section-header"><a href="#variant.MatchAgainst.field.opt_search_modifier" class="anchor field">§</a><code>opt_search_modifier: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><SearchModifier></code></span><div class="docblock"><p><code><search modifier></code></p>
|
|
</div></div></div><section id="variant.Wildcard" class="variant"><a href="#variant.Wildcard" class="anchor">§</a><h3 class="code-header">Wildcard(AttachedToken)</h3></section><section id="variant.QualifiedWildcard" class="variant"><a href="#variant.QualifiedWildcard" class="anchor">§</a><h3 class="code-header">QualifiedWildcard(<a class="struct" href="../convert/struct.ObjectName.html" title="struct common_sql::convert::ObjectName">ObjectName</a>, AttachedToken)</h3></section><div class="docblock"><p>Qualified wildcard, e.g. <code>alias.*</code> or <code>schema.table.*</code>.
|
|
(Same caveats apply to <code>QualifiedWildcard</code> as to <code>Wildcard</code>.)</p>
|
|
</div><section id="variant.OuterJoin" class="variant"><a href="#variant.OuterJoin" class="anchor">§</a><h3 class="code-header">OuterJoin(<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>)</h3></section><div class="docblock"><p>Some dialects support an older syntax for outer joins where columns are
|
|
marked with the <code>(+)</code> operator in the WHERE clause, for example:</p>
|
|
<div class="example-wrap"><pre class="language-sql"><code>SELECT t1.c1, t2.c2 FROM t1, t2 WHERE t1.c1 = t2.c2 (+)</code></pre></div>
|
|
<p>which is equivalent to</p>
|
|
<div class="example-wrap"><pre class="language-sql"><code>SELECT t1.c1, t2.c2 FROM t1 LEFT OUTER JOIN t2 ON t1.c1 = t2.c2</code></pre></div>
|
|
<p>See <a href="https://docs.snowflake.com/en/sql-reference/constructs/where#joins-in-the-where-clause">https://docs.snowflake.com/en/sql-reference/constructs/where#joins-in-the-where-clause</a>.</p>
|
|
</div><section id="variant.Prior" class="variant"><a href="#variant.Prior" class="anchor">§</a><h3 class="code-header">Prior(<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>>)</h3></section><div class="docblock"><p>A reference to the prior level in a CONNECT BY clause.</p>
|
|
</div><section id="variant.Lambda" class="variant"><a href="#variant.Lambda" class="anchor">§</a><h3 class="code-header">Lambda(LambdaFunction)</h3></section><div class="docblock"><p>A lambda function.</p>
|
|
<p>Syntax:</p>
|
|
<div class="example-wrap"><pre class="language-plaintext"><code>param -> expr | (param1, ...) -> expr</code></pre></div>
|
|
<p><a href="https://clickhouse.com/docs/en/sql-reference/functions#higher-order-functions---operator-and-lambdaparams-expr-function">ClickHouse</a>
|
|
<a href="https://docs.databricks.com/en/sql/language-manual/sql-ref-lambda-functions.html">Databricks</a>
|
|
<a href="https://duckdb.org/docs/sql/functions/lambda.html">DuckDb</a></p>
|
|
</div><section id="variant.MemberOf" class="variant"><a href="#variant.MemberOf" class="anchor">§</a><h3 class="code-header">MemberOf(MemberOf)</h3></section><div class="docblock"><p>Checks membership of a value in a JSON array</p>
|
|
</div></div><h2 id="implementations" class="section-header">Implementations<a href="#implementations" class="anchor">§</a></h2><div id="implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Expr" class="impl"><a href="#impl-Expr" class="anchor">§</a><h3 class="code-header">impl <a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.value" class="method"><h4 class="code-header">pub fn <a href="#method.value" class="fn">value</a>(value: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><ValueWithSpan>) -> <a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a></h4></section></summary><div class="docblock"><p>Creates a new <a href="../convert/enum.Expr.html#variant.Value" title="variant common_sql::convert::Expr::Value"><code>Expr::Value</code></a></p>
|
|
</div></details></div></details></div><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Clone-for-Expr" class="impl"><a href="#impl-Clone-for-Expr" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> for <a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.clone" class="method trait-impl"><a href="#method.clone" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html#tymethod.clone" class="fn">clone</a>(&self) -> <a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a></h4></section></summary><div class='docblock'>Returns a duplicate of the value. <a href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html#tymethod.clone">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.clone_from" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/core/clone.rs.html#245-247">Source</a></span><a href="#method.clone_from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html#method.clone_from" class="fn">clone_from</a>(&mut self, source: &Self)</h4></section></summary><div class='docblock'>Performs copy-assignment from <code>source</code>. <a href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html#method.clone_from">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Debug-for-Expr" class="impl"><a href="#impl-Debug-for-Expr" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/fmt/trait.Debug.html" title="trait core::fmt::Debug">Debug</a> for <a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.fmt" class="method trait-impl"><a href="#method.fmt" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/fmt/trait.Debug.html#tymethod.fmt" class="fn">fmt</a>(&self, f: &mut <a class="struct" href="https://doc.rust-lang.org/nightly/core/fmt/struct.Formatter.html" title="struct core::fmt::Formatter">Formatter</a><'_>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="struct" href="https://doc.rust-lang.org/nightly/core/fmt/struct.Error.html" title="struct core::fmt::Error">Error</a>></h4></section></summary><div class='docblock'>Formats the value using the given formatter. <a href="https://doc.rust-lang.org/nightly/core/fmt/trait.Debug.html#tymethod.fmt">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Deserialize%3C'de%3E-for-Expr" class="impl"><a href="#impl-Deserialize%3C'de%3E-for-Expr" class="anchor">§</a><h3 class="code-header">impl<'de> <a class="trait" href="https://docs.rs/serde_core/1.0.228/serde_core/de/trait.Deserialize.html" title="trait serde_core::de::Deserialize">Deserialize</a><'de> for <a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.deserialize" class="method trait-impl"><a href="#method.deserialize" class="anchor">§</a><h4 class="code-header">fn <a href="https://docs.rs/serde_core/1.0.228/serde_core/de/trait.Deserialize.html#tymethod.deserialize" class="fn">deserialize</a><__D>(
|
|
__deserializer: __D,
|
|
) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>, <__D as <a class="trait" href="https://docs.rs/serde_core/1.0.228/serde_core/de/trait.Deserializer.html" title="trait serde_core::de::Deserializer">Deserializer</a><'de>>::<a class="associatedtype" href="https://docs.rs/serde_core/1.0.228/serde_core/de/trait.Deserializer.html#associatedtype.Error" title="type serde_core::de::Deserializer::Error">Error</a>><div class="where">where
|
|
__D: <a class="trait" href="https://docs.rs/serde_core/1.0.228/serde_core/de/trait.Deserializer.html" title="trait serde_core::de::Deserializer">Deserializer</a><'de>,</div></h4></section></summary><div class='docblock'>Deserialize this value from the given Serde deserializer. <a href="https://docs.rs/serde_core/1.0.228/serde_core/de/trait.Deserialize.html#tymethod.deserialize">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Display-for-Expr" class="impl"><a href="#impl-Display-for-Expr" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/fmt/trait.Display.html" title="trait core::fmt::Display">Display</a> for <a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.fmt-1" class="method trait-impl"><a href="#method.fmt-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/fmt/trait.Display.html#tymethod.fmt" class="fn">fmt</a>(&self, f: &mut <a class="struct" href="https://doc.rust-lang.org/nightly/core/fmt/struct.Formatter.html" title="struct core::fmt::Formatter">Formatter</a><'_>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.unit.html">()</a>, <a class="struct" href="https://doc.rust-lang.org/nightly/core/fmt/struct.Error.html" title="struct core::fmt::Error">Error</a>></h4></section></summary><div class='docblock'>Formats the value using the given formatter. <a href="https://doc.rust-lang.org/nightly/core/fmt/trait.Display.html#tymethod.fmt">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-From%3CExpr%3E-for-FunctionArgExpr" class="impl"><a href="#impl-From%3CExpr%3E-for-FunctionArgExpr" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a><<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>> for <a class="enum" href="../convert/enum.FunctionArgExpr.html" title="enum common_sql::convert::FunctionArgExpr">FunctionArgExpr</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(wildcard_expr: <a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>) -> <a class="enum" href="../convert/enum.FunctionArgExpr.html" title="enum common_sql::convert::FunctionArgExpr">FunctionArgExpr</a></h4></section></summary><div class='docblock'>Converts to this type from the input type.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Hash-for-Expr" class="impl"><a href="#impl-Hash-for-Expr" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/hash/trait.Hash.html" title="trait core::hash::Hash">Hash</a> for <a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.hash" class="method trait-impl"><a href="#method.hash" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/hash/trait.Hash.html#tymethod.hash" class="fn">hash</a><__H>(&self, state: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&mut __H</a>)<div class="where">where
|
|
__H: <a class="trait" href="https://doc.rust-lang.org/nightly/core/hash/trait.Hasher.html" title="trait core::hash::Hasher">Hasher</a>,</div></h4></section></summary><div class='docblock'>Feeds this value into the given <a href="https://doc.rust-lang.org/nightly/core/hash/trait.Hasher.html" title="trait core::hash::Hasher"><code>Hasher</code></a>. <a href="https://doc.rust-lang.org/nightly/core/hash/trait.Hash.html#tymethod.hash">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.hash_slice" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.3.0">1.3.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/core/hash/mod.rs.html#235-237">Source</a></span><a href="#method.hash_slice" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/hash/trait.Hash.html#method.hash_slice" class="fn">hash_slice</a><H>(data: &[Self], state: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&mut H</a>)<div class="where">where
|
|
H: <a class="trait" href="https://doc.rust-lang.org/nightly/core/hash/trait.Hasher.html" title="trait core::hash::Hasher">Hasher</a>,
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Feeds a slice of this type into the given <a href="https://doc.rust-lang.org/nightly/core/hash/trait.Hasher.html" title="trait core::hash::Hasher"><code>Hasher</code></a>. <a href="https://doc.rust-lang.org/nightly/core/hash/trait.Hash.html#method.hash_slice">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Ord-for-Expr" class="impl"><a href="#impl-Ord-for-Expr" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a> for <a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.cmp" class="method trait-impl"><a href="#method.cmp" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.Ord.html#tymethod.cmp" class="fn">cmp</a>(&self, other: &<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a></h4></section></summary><div class='docblock'>This method returns an <a href="https://doc.rust-lang.org/nightly/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering"><code>Ordering</code></a> between <code>self</code> and <code>other</code>. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.Ord.html#tymethod.cmp">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.max" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.21.0">1.21.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#1021-1023">Source</a></span><a href="#method.max" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.Ord.html#method.max" class="fn">max</a>(self, other: Self) -> Self<div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Compares and returns the maximum of two values. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.Ord.html#method.max">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.min" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.21.0">1.21.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#1060-1062">Source</a></span><a href="#method.min" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.Ord.html#method.min" class="fn">min</a>(self, other: Self) -> Self<div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Compares and returns the minimum of two values. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.Ord.html#method.min">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.clamp" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.50.0">1.50.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#1086-1088">Source</a></span><a href="#method.clamp" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.Ord.html#method.clamp" class="fn">clamp</a>(self, min: Self, max: Self) -> Self<div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Restrict a value to a certain interval. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.Ord.html#method.clamp">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-PartialEq-for-Expr" class="impl"><a href="#impl-PartialEq-for-Expr" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html" title="trait core::cmp::PartialEq">PartialEq</a> for <a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.eq" class="method trait-impl"><a href="#method.eq" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html#tymethod.eq" class="fn">eq</a>(&self, other: &<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>Tests for <code>self</code> and <code>other</code> values to be equal, and is used by <code>==</code>.</div></details><details class="toggle method-toggle" open><summary><section id="method.ne" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#264">Source</a></span><a href="#method.ne" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialEq.html#method.ne" class="fn">ne</a>(&self, other: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&Rhs</a>) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>Tests for <code>!=</code>. The default implementation is almost always sufficient,
|
|
and should not be overridden without very good reason.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-PartialOrd-for-Expr" class="impl"><a href="#impl-PartialOrd-for-Expr" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a> for <a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.partial_cmp" class="method trait-impl"><a href="#method.partial_cmp" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#tymethod.partial_cmp" class="fn">partial_cmp</a>(&self, other: &<a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="enum" href="https://doc.rust-lang.org/nightly/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a>></h4></section></summary><div class='docblock'>This method returns an ordering between <code>self</code> and <code>other</code> values if one exists. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#tymethod.partial_cmp">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.lt" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#1398">Source</a></span><a href="#method.lt" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.lt" class="fn">lt</a>(&self, other: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&Rhs</a>) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>Tests less than (for <code>self</code> and <code>other</code>) and is used by the <code><</code> operator. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.lt">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.le" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#1416">Source</a></span><a href="#method.le" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.le" class="fn">le</a>(&self, other: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&Rhs</a>) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>Tests less than or equal to (for <code>self</code> and <code>other</code>) and is used by the
|
|
<code><=</code> operator. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.le">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.gt" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#1434">Source</a></span><a href="#method.gt" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.gt" class="fn">gt</a>(&self, other: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&Rhs</a>) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>Tests greater than (for <code>self</code> and <code>other</code>) and is used by the <code>></code>
|
|
operator. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.gt">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.ge" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/nightly/src/core/cmp.rs.html#1452">Source</a></span><a href="#method.ge" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.ge" class="fn">ge</a>(&self, other: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&Rhs</a>) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>Tests greater than or equal to (for <code>self</code> and <code>other</code>) and is used by
|
|
the <code>>=</code> operator. <a href="https://doc.rust-lang.org/nightly/core/cmp/trait.PartialOrd.html#method.ge">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Serialize-for-Expr" class="impl"><a href="#impl-Serialize-for-Expr" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://docs.rs/serde_core/1.0.228/serde_core/ser/trait.Serialize.html" title="trait serde_core::ser::Serialize">Serialize</a> for <a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.serialize" class="method trait-impl"><a href="#method.serialize" class="anchor">§</a><h4 class="code-header">fn <a href="https://docs.rs/serde_core/1.0.228/serde_core/ser/trait.Serialize.html#tymethod.serialize" class="fn">serialize</a><__S>(
|
|
&self,
|
|
__serializer: __S,
|
|
) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<__S as <a class="trait" href="https://docs.rs/serde_core/1.0.228/serde_core/ser/trait.Serializer.html" title="trait serde_core::ser::Serializer">Serializer</a>>::<a class="associatedtype" href="https://docs.rs/serde_core/1.0.228/serde_core/ser/trait.Serializer.html#associatedtype.Ok" title="type serde_core::ser::Serializer::Ok">Ok</a>, <__S as <a class="trait" href="https://docs.rs/serde_core/1.0.228/serde_core/ser/trait.Serializer.html" title="trait serde_core::ser::Serializer">Serializer</a>>::<a class="associatedtype" href="https://docs.rs/serde_core/1.0.228/serde_core/ser/trait.Serializer.html#associatedtype.Error" title="type serde_core::ser::Serializer::Error">Error</a>><div class="where">where
|
|
__S: <a class="trait" href="https://docs.rs/serde_core/1.0.228/serde_core/ser/trait.Serializer.html" title="trait serde_core::ser::Serializer">Serializer</a>,</div></h4></section></summary><div class='docblock'>Serialize this value into the given Serde serializer. <a href="https://docs.rs/serde_core/1.0.228/serde_core/ser/trait.Serialize.html#tymethod.serialize">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Spanned-for-Expr" class="impl"><a href="#impl-Spanned-for-Expr" class="anchor">§</a><h3 class="code-header">impl Spanned for <a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a></h3><div class="docblock"><h4 id="partial-span"><a class="doc-anchor" href="#partial-span">§</a>partial span</h4>
|
|
<p>Most expressions are missing keywords in their spans.
|
|
f.e. <code>IS NULL <expr></code> reports as <code><expr>::span</code>.</p>
|
|
</div></section></summary><div class="docblock"><p>Missing spans:</p>
|
|
<ul>
|
|
<li><a href="../convert/enum.Expr.html#variant.MatchAgainst" title="variant common_sql::convert::Expr::MatchAgainst">Expr::MatchAgainst</a> # MySQL specific</li>
|
|
<li><a href="../convert/enum.Expr.html#variant.RLike" title="variant common_sql::convert::Expr::RLike">Expr::RLike</a> # MySQL specific</li>
|
|
<li><a href="../convert/enum.Expr.html#variant.Struct" title="variant common_sql::convert::Expr::Struct">Expr::Struct</a> # BigQuery specific</li>
|
|
<li><a href="../convert/enum.Expr.html#variant.Named" title="variant common_sql::convert::Expr::Named">Expr::Named</a> # BigQuery specific</li>
|
|
<li><a href="../convert/enum.Expr.html#variant.Dictionary" title="variant common_sql::convert::Expr::Dictionary">Expr::Dictionary</a> # DuckDB specific</li>
|
|
<li><a href="../convert/enum.Expr.html#variant.Map" title="variant common_sql::convert::Expr::Map">Expr::Map</a> # DuckDB specific</li>
|
|
<li><a href="../convert/enum.Expr.html#variant.Lambda" title="variant common_sql::convert::Expr::Lambda">Expr::Lambda</a></li>
|
|
</ul>
|
|
</div><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.span" class="method trait-impl"><a href="#method.span" class="anchor">§</a><h4 class="code-header">fn <a class="fn">span</a>(&self) -> Span</h4></section></summary><div class='docblock'>Return the [<code>Span</code>] (the minimum and maximum <a href="crate::tokenizer::Location"><code>Location</code></a>) for this AST
|
|
node, by recursively combining the spans of its children.</div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Visit-for-Expr" class="impl"><a href="#impl-Visit-for-Expr" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="../convert/trait.Visit.html" title="trait common_sql::convert::Visit">Visit</a> for <a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a></h3></section></summary><div class="impl-items"><section id="method.visit" class="method trait-impl"><a href="#method.visit" class="anchor">§</a><h4 class="code-header">fn <a href="../convert/trait.Visit.html#tymethod.visit" class="fn">visit</a><V>(&self, visitor: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&mut V</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/ops/control_flow/enum.ControlFlow.html" title="enum core::ops::control_flow::ControlFlow">ControlFlow</a><<V as <a class="trait" href="../convert/trait.Visitor.html" title="trait common_sql::convert::Visitor">Visitor</a>>::<a class="associatedtype" href="../convert/trait.Visitor.html#associatedtype.Break" title="type common_sql::convert::Visitor::Break">Break</a>><div class="where">where
|
|
V: <a class="trait" href="../convert/trait.Visitor.html" title="trait common_sql::convert::Visitor">Visitor</a>,</div></h4></section></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-VisitMut-for-Expr" class="impl"><a href="#impl-VisitMut-for-Expr" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="../convert/trait.VisitMut.html" title="trait common_sql::convert::VisitMut">VisitMut</a> for <a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a></h3></section></summary><div class="impl-items"><section id="method.visit-1" class="method trait-impl"><a href="#method.visit-1" class="anchor">§</a><h4 class="code-header">fn <a href="../convert/trait.VisitMut.html#tymethod.visit" class="fn">visit</a><V>(&mut self, visitor: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&mut V</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/ops/control_flow/enum.ControlFlow.html" title="enum core::ops::control_flow::ControlFlow">ControlFlow</a><<V as <a class="trait" href="../convert/trait.VisitorMut.html" title="trait common_sql::convert::VisitorMut">VisitorMut</a>>::<a class="associatedtype" href="../convert/trait.VisitorMut.html#associatedtype.Break" title="type common_sql::convert::VisitorMut::Break">Break</a>><div class="where">where
|
|
V: <a class="trait" href="../convert/trait.VisitorMut.html" title="trait common_sql::convert::VisitorMut">VisitorMut</a>,</div></h4></section></div></details><section id="impl-Eq-for-Expr" class="impl"><a href="#impl-Eq-for-Expr" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/cmp/trait.Eq.html" title="trait core::cmp::Eq">Eq</a> for <a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a></h3></section><section id="impl-StructuralPartialEq-for-Expr" class="impl"><a href="#impl-StructuralPartialEq-for-Expr" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.StructuralPartialEq.html" title="trait core::marker::StructuralPartialEq">StructuralPartialEq</a> for <a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a></h3></section></div><h2 id="synthetic-implementations" class="section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-Freeze-for-Expr" class="impl"><a href="#impl-Freeze-for-Expr" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Freeze.html" title="trait core::marker::Freeze">Freeze</a> for <a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a></h3></section><section id="impl-RefUnwindSafe-for-Expr" class="impl"><a href="#impl-RefUnwindSafe-for-Expr" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a></h3></section><section id="impl-Send-for-Expr" class="impl"><a href="#impl-Send-for-Expr" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a></h3></section><section id="impl-Sync-for-Expr" class="impl"><a href="#impl-Sync-for-Expr" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a></h3></section><section id="impl-Unpin-for-Expr" class="impl"><a href="#impl-Unpin-for-Expr" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a></h3></section><section id="impl-UnwindSafe-for-Expr" class="impl"><a href="#impl-UnwindSafe-for-Expr" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="enum" href="../convert/enum.Expr.html" title="enum common_sql::convert::Expr">Expr</a></h3></section></div><h2 id="blanket-implementations" class="section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#138">Source</a><a href="#impl-Any-for-T" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/nightly/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<div class="where">where
|
|
T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/any.rs.html#139">Source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/any/trait.Any.html#tymethod.type_id" class="fn">type_id</a>(&self) -> <a class="struct" href="https://doc.rust-lang.org/nightly/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></h4></section></summary><div class='docblock'>Gets the <code>TypeId</code> of <code>self</code>. <a href="https://doc.rust-lang.org/nightly/core/any/trait.Any.html#tymethod.type_id">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Borrow%3CT%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#212">Source</a><a href="#impl-Borrow%3CT%3E-for-T" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a><T> for T<div class="where">where
|
|
T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#214">Source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html#tymethod.borrow" class="fn">borrow</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&T</a></h4></section></summary><div class='docblock'>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-BorrowMut%3CT%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#221">Source</a><a href="#impl-BorrowMut%3CT%3E-for-T" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/nightly/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a><T> for T<div class="where">where
|
|
T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/borrow.rs.html#222">Source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut" class="fn">borrow_mut</a>(&mut self) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&mut T</a></h4></section></summary><div class='docblock'>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/nightly/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-CloneToUninit-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/clone.rs.html#515">Source</a><a href="#impl-CloneToUninit-for-T" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/nightly/core/clone/trait.CloneToUninit.html" title="trait core::clone::CloneToUninit">CloneToUninit</a> for T<div class="where">where
|
|
T: <a class="trait" href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.clone_to_uninit" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/clone.rs.html#517">Source</a><a href="#method.clone_to_uninit" class="anchor">§</a><h4 class="code-header">unsafe fn <a href="https://doc.rust-lang.org/nightly/core/clone/trait.CloneToUninit.html#tymethod.clone_to_uninit" class="fn">clone_to_uninit</a>(&self, dest: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.pointer.html">*mut </a><a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.u8.html">u8</a>)</h4></section></summary><span class="item-info"><div class="stab unstable"><span class="emoji">🔬</span><span>This is a nightly-only experimental API. (<code>clone_to_uninit</code>)</span></div></span><div class='docblock'>Performs copy-assignment from <code>self</code> to <code>dest</code>. <a href="https://doc.rust-lang.org/nightly/core/clone/trait.CloneToUninit.html#tymethod.clone_to_uninit">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Comparable%3CK%3E-for-Q" class="impl"><a href="#impl-Comparable%3CK%3E-for-Q" class="anchor">§</a><h3 class="code-header">impl<Q, K> Comparable<K> for Q<div class="where">where
|
|
Q: <a class="trait" href="https://doc.rust-lang.org/nightly/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a> + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,
|
|
K: <a class="trait" href="https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a><Q> + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.compare" class="method trait-impl"><a href="#method.compare" class="anchor">§</a><h4 class="code-header">fn <a class="fn">compare</a>(&self, key: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&K</a>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a></h4></section></summary><div class='docblock'>Compare self to <code>key</code> and return their ordering.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Conv-for-T" class="impl"><a href="#impl-Conv-for-T" class="anchor">§</a><h3 class="code-header">impl<T> Conv for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.conv" class="method trait-impl"><a href="#method.conv" class="anchor">§</a><h4 class="code-header">fn <a class="fn">conv</a><T>(self) -> T<div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><T>,</div></h4></section></summary><div class='docblock'>Converts <code>self</code> into <code>T</code> using <code>Into<T></code>. <a>Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Convert%3CT%3E-for-V" class="impl"><a href="#impl-Convert%3CT%3E-for-V" class="anchor">§</a><h3 class="code-header">impl<T, V> Convert<T> for V<div class="where">where
|
|
V: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><T>,</div></h3></section></summary><div class="impl-items"><section id="method.convert" class="method trait-impl"><a href="#method.convert" class="anchor">§</a><h4 class="code-header">fn <a class="fn">convert</a>(value: Self) -> T</h4></section><section id="method.convert_box" class="method trait-impl"><a href="#method.convert_box" class="anchor">§</a><h4 class="code-header">fn <a class="fn">convert_box</a>(value: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><Self>) -> <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><T></h4></section><section id="method.convert_vec" class="method trait-impl"><a href="#method.convert_vec" class="anchor">§</a><h4 class="code-header">fn <a class="fn">convert_vec</a>(value: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><Self>) -> <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><T></h4></section><section id="method.convert_vec_box" class="method trait-impl"><a href="#method.convert_vec_box" class="anchor">§</a><h4 class="code-header">fn <a class="fn">convert_vec_box</a>(value: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><Self>>) -> <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><T>></h4></section><section id="method.convert_matrix" class="method trait-impl"><a href="#method.convert_matrix" class="anchor">§</a><h4 class="code-header">fn <a class="fn">convert_matrix</a>(value: <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><Self>>) -> <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><T>></h4></section><section id="method.convert_option" class="method trait-impl"><a href="#method.convert_option" class="anchor">§</a><h4 class="code-header">fn <a class="fn">convert_option</a>(value: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><T></h4></section><section id="method.convert_option_box" class="method trait-impl"><a href="#method.convert_option_box" class="anchor">§</a><h4 class="code-header">fn <a class="fn">convert_option_box</a>(value: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><Self>>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/boxed/struct.Box.html" title="struct alloc::boxed::Box">Box</a><T>></h4></section><section id="method.convert_option_vec" class="method trait-impl"><a href="#method.convert_option_vec" class="anchor">§</a><h4 class="code-header">fn <a class="fn">convert_option_vec</a>(value: <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><Self>>) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><T>></h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-DynEq-for-T" class="impl"><a href="#impl-DynEq-for-T" class="anchor">§</a><h3 class="code-header">impl<T> DynEq for T<div class="where">where
|
|
T: <a class="trait" href="https://doc.rust-lang.org/nightly/core/cmp/trait.Eq.html" title="trait core::cmp::Eq">Eq</a> + <a class="trait" href="https://doc.rust-lang.org/nightly/core/any/trait.Any.html" title="trait core::any::Any">Any</a>,</div></h3></section></summary><div class="impl-items"><section id="method.dyn_eq" class="method trait-impl"><a href="#method.dyn_eq" class="anchor">§</a><h4 class="code-header">fn <a class="fn">dyn_eq</a>(&self, other: &(dyn <a class="trait" href="https://doc.rust-lang.org/nightly/core/any/trait.Any.html" title="trait core::any::Any">Any</a> + 'static)) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-DynHash-for-T" class="impl"><a href="#impl-DynHash-for-T" class="anchor">§</a><h3 class="code-header">impl<T> DynHash for T<div class="where">where
|
|
T: <a class="trait" href="https://doc.rust-lang.org/nightly/core/hash/trait.Hash.html" title="trait core::hash::Hash">Hash</a> + <a class="trait" href="https://doc.rust-lang.org/nightly/core/any/trait.Any.html" title="trait core::any::Any">Any</a>,</div></h3></section></summary><div class="impl-items"><section id="method.dyn_hash" class="method trait-impl"><a href="#method.dyn_hash" class="anchor">§</a><h4 class="code-header">fn <a class="fn">dyn_hash</a>(&self, state: &mut dyn <a class="trait" href="https://doc.rust-lang.org/nightly/core/hash/trait.Hasher.html" title="trait core::hash::Hasher">Hasher</a>)</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Equivalent%3CK%3E-for-Q" class="impl"><a href="#impl-Equivalent%3CK%3E-for-Q" class="anchor">§</a><h3 class="code-header">impl<Q, K> Equivalent<K> for Q<div class="where">where
|
|
Q: <a class="trait" href="https://doc.rust-lang.org/nightly/core/cmp/trait.Eq.html" title="trait core::cmp::Eq">Eq</a> + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,
|
|
K: <a class="trait" href="https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a><Q> + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.equivalent" class="method trait-impl"><a href="#method.equivalent" class="anchor">§</a><h4 class="code-header">fn <a class="fn">equivalent</a>(&self, key: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&K</a>) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>Checks if this value is equivalent to the given key. <a>Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Equivalent%3CK%3E-for-Q-1" class="impl"><a href="#impl-Equivalent%3CK%3E-for-Q-1" class="anchor">§</a><h3 class="code-header">impl<Q, K> Equivalent<K> for Q<div class="where">where
|
|
Q: <a class="trait" href="https://doc.rust-lang.org/nightly/core/cmp/trait.Eq.html" title="trait core::cmp::Eq">Eq</a> + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,
|
|
K: <a class="trait" href="https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a><Q> + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.equivalent-1" class="method trait-impl"><a href="#method.equivalent-1" class="anchor">§</a><h4 class="code-header">fn <a class="fn">equivalent</a>(&self, key: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&K</a>) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>Compare self to <code>key</code> and return <code>true</code> if they are equal.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Equivalent%3CK%3E-for-Q-2" class="impl"><a href="#impl-Equivalent%3CK%3E-for-Q-2" class="anchor">§</a><h3 class="code-header">impl<Q, K> Equivalent<K> for Q<div class="where">where
|
|
Q: <a class="trait" href="https://doc.rust-lang.org/nightly/core/cmp/trait.Eq.html" title="trait core::cmp::Eq">Eq</a> + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,
|
|
K: <a class="trait" href="https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a><Q> + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.equivalent-2" class="method trait-impl"><a href="#method.equivalent-2" class="anchor">§</a><h4 class="code-header">fn <a class="fn">equivalent</a>(&self, key: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&K</a>) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a></h4></section></summary><div class='docblock'>Checks if this value is equivalent to the given key. <a>Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-FmtForward-for-T" class="impl"><a href="#impl-FmtForward-for-T" class="anchor">§</a><h3 class="code-header">impl<T> FmtForward for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.fmt_binary" class="method trait-impl"><a href="#method.fmt_binary" class="anchor">§</a><h4 class="code-header">fn <a class="fn">fmt_binary</a>(self) -> FmtBinary<Self><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/fmt/trait.Binary.html" title="trait core::fmt::Binary">Binary</a>,</div></h4></section></summary><div class='docblock'>Causes <code>self</code> to use its <code>Binary</code> implementation when <code>Debug</code>-formatted.</div></details><details class="toggle method-toggle" open><summary><section id="method.fmt_display" class="method trait-impl"><a href="#method.fmt_display" class="anchor">§</a><h4 class="code-header">fn <a class="fn">fmt_display</a>(self) -> FmtDisplay<Self><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/fmt/trait.Display.html" title="trait core::fmt::Display">Display</a>,</div></h4></section></summary><div class='docblock'>Causes <code>self</code> to use its <code>Display</code> implementation when
|
|
<code>Debug</code>-formatted.</div></details><details class="toggle method-toggle" open><summary><section id="method.fmt_lower_exp" class="method trait-impl"><a href="#method.fmt_lower_exp" class="anchor">§</a><h4 class="code-header">fn <a class="fn">fmt_lower_exp</a>(self) -> FmtLowerExp<Self><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/fmt/trait.LowerExp.html" title="trait core::fmt::LowerExp">LowerExp</a>,</div></h4></section></summary><div class='docblock'>Causes <code>self</code> to use its <code>LowerExp</code> implementation when
|
|
<code>Debug</code>-formatted.</div></details><details class="toggle method-toggle" open><summary><section id="method.fmt_lower_hex" class="method trait-impl"><a href="#method.fmt_lower_hex" class="anchor">§</a><h4 class="code-header">fn <a class="fn">fmt_lower_hex</a>(self) -> FmtLowerHex<Self><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/fmt/trait.LowerHex.html" title="trait core::fmt::LowerHex">LowerHex</a>,</div></h4></section></summary><div class='docblock'>Causes <code>self</code> to use its <code>LowerHex</code> implementation when
|
|
<code>Debug</code>-formatted.</div></details><details class="toggle method-toggle" open><summary><section id="method.fmt_octal" class="method trait-impl"><a href="#method.fmt_octal" class="anchor">§</a><h4 class="code-header">fn <a class="fn">fmt_octal</a>(self) -> FmtOctal<Self><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/fmt/trait.Octal.html" title="trait core::fmt::Octal">Octal</a>,</div></h4></section></summary><div class='docblock'>Causes <code>self</code> to use its <code>Octal</code> implementation when <code>Debug</code>-formatted.</div></details><details class="toggle method-toggle" open><summary><section id="method.fmt_pointer" class="method trait-impl"><a href="#method.fmt_pointer" class="anchor">§</a><h4 class="code-header">fn <a class="fn">fmt_pointer</a>(self) -> FmtPointer<Self><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/fmt/trait.Pointer.html" title="trait core::fmt::Pointer">Pointer</a>,</div></h4></section></summary><div class='docblock'>Causes <code>self</code> to use its <code>Pointer</code> implementation when
|
|
<code>Debug</code>-formatted.</div></details><details class="toggle method-toggle" open><summary><section id="method.fmt_upper_exp" class="method trait-impl"><a href="#method.fmt_upper_exp" class="anchor">§</a><h4 class="code-header">fn <a class="fn">fmt_upper_exp</a>(self) -> FmtUpperExp<Self><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/fmt/trait.UpperExp.html" title="trait core::fmt::UpperExp">UpperExp</a>,</div></h4></section></summary><div class='docblock'>Causes <code>self</code> to use its <code>UpperExp</code> implementation when
|
|
<code>Debug</code>-formatted.</div></details><details class="toggle method-toggle" open><summary><section id="method.fmt_upper_hex" class="method trait-impl"><a href="#method.fmt_upper_hex" class="anchor">§</a><h4 class="code-header">fn <a class="fn">fmt_upper_hex</a>(self) -> FmtUpperHex<Self><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/fmt/trait.UpperHex.html" title="trait core::fmt::UpperHex">UpperHex</a>,</div></h4></section></summary><div class='docblock'>Causes <code>self</code> to use its <code>UpperHex</code> implementation when
|
|
<code>Debug</code>-formatted.</div></details><details class="toggle method-toggle" open><summary><section id="method.fmt_list" class="method trait-impl"><a href="#method.fmt_list" class="anchor">§</a><h4 class="code-header">fn <a class="fn">fmt_list</a>(self) -> FmtList<Self><div class="where">where
|
|
&'a Self: for<'a> <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a>,</div></h4></section></summary><div class='docblock'>Formats each item in a sequence. <a>Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-From%3CT%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/convert/mod.rs.html#785">Source</a><a href="#impl-From%3CT%3E-for-T" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a><T> for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from-1" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/convert/mod.rs.html#788">Source</a><a href="#method.from-1" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(t: T) -> T</h4></section></summary><div class="docblock"><p>Returns the argument unchanged.</p>
|
|
</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-FromRef%3CT%3E-for-T" class="impl"><a href="#impl-FromRef%3CT%3E-for-T" class="anchor">§</a><h3 class="code-header">impl<T> FromRef<T> for T<div class="where">where
|
|
T: <a class="trait" href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from_ref" class="method trait-impl"><a href="#method.from_ref" class="anchor">§</a><h4 class="code-header">fn <a class="fn">from_ref</a>(input: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&T</a>) -> T</h4></section></summary><div class='docblock'>Converts to this type from a reference to the input type.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-FutureExt-for-T" class="impl"><a href="#impl-FutureExt-for-T" class="anchor">§</a><h3 class="code-header">impl<T> FutureExt for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.with_context" class="method trait-impl"><a href="#method.with_context" class="anchor">§</a><h4 class="code-header">fn <a class="fn">with_context</a>(self, otel_cx: Context) -> WithContext<Self></h4></section></summary><div class='docblock'>Attaches the provided <a href="Context"><code>Context</code></a> to this type, returning a <code>WithContext</code>
|
|
wrapper. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.with_current_context" class="method trait-impl"><a href="#method.with_current_context" class="anchor">§</a><h4 class="code-header">fn <a class="fn">with_current_context</a>(self) -> WithContext<Self></h4></section></summary><div class='docblock'>Attaches the current <a href="Context"><code>Context</code></a> to this type, returning a <code>WithContext</code>
|
|
wrapper. <a>Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Instrument-for-T" class="impl"><a href="#impl-Instrument-for-T" class="anchor">§</a><h3 class="code-header">impl<T> Instrument for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.instrument" class="method trait-impl"><a href="#method.instrument" class="anchor">§</a><h4 class="code-header">fn <a class="fn">instrument</a>(self, span: Span) -> Instrumented<Self></h4></section></summary><div class='docblock'>Instruments this type with the provided [<code>Span</code>], returning an
|
|
<code>Instrumented</code> wrapper. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.in_current_span" class="method trait-impl"><a href="#method.in_current_span" class="anchor">§</a><h4 class="code-header">fn <a class="fn">in_current_span</a>(self) -> Instrumented<Self></h4></section></summary><div class='docblock'>Instruments this type with the <a href="super::Span::current()">current</a> <a href="crate::Span"><code>Span</code></a>, returning an
|
|
<code>Instrumented</code> wrapper. <a>Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Into%3CU%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/convert/mod.rs.html#767-769">Source</a><a href="#impl-Into%3CU%3E-for-T" class="anchor">§</a><h3 class="code-header">impl<T, U> <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><U> for T<div class="where">where
|
|
U: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a><T>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.into" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/convert/mod.rs.html#777">Source</a><a href="#method.into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html#tymethod.into" class="fn">into</a>(self) -> U</h4></section></summary><div class="docblock"><p>Calls <code>U::from(self)</code>.</p>
|
|
<p>That is, this conversion is whatever the implementation of
|
|
<code><a href="https://doc.rust-lang.org/nightly/core/convert/trait.From.html" title="trait core::convert::From">From</a><T> for U</code> chooses to do.</p>
|
|
</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-IntoEither-for-T" class="impl"><a class="src rightside" href="https://docs.rs/either/1/src/either/into_either.rs.html#64">Source</a><a href="#impl-IntoEither-for-T" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://docs.rs/either/1/either/into_either/trait.IntoEither.html" title="trait either::into_either::IntoEither">IntoEither</a> for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.into_either" class="method trait-impl"><a class="src rightside" href="https://docs.rs/either/1/src/either/into_either.rs.html#29">Source</a><a href="#method.into_either" class="anchor">§</a><h4 class="code-header">fn <a href="https://docs.rs/either/1/either/into_either/trait.IntoEither.html#method.into_either" class="fn">into_either</a>(self, into_left: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>) -> <a class="enum" href="https://docs.rs/either/1/either/enum.Either.html" title="enum either::Either">Either</a><Self, Self></h4></section></summary><div class='docblock'>Converts <code>self</code> into a <a href="https://docs.rs/either/1/either/enum.Either.html#variant.Left" title="variant either::Either::Left"><code>Left</code></a> variant of <a href="https://docs.rs/either/1/either/enum.Either.html" title="enum either::Either"><code>Either<Self, Self></code></a>
|
|
if <code>into_left</code> is <code>true</code>.
|
|
Converts <code>self</code> into a <a href="https://docs.rs/either/1/either/enum.Either.html#variant.Right" title="variant either::Either::Right"><code>Right</code></a> variant of <a href="https://docs.rs/either/1/either/enum.Either.html" title="enum either::Either"><code>Either<Self, Self></code></a>
|
|
otherwise. <a href="https://docs.rs/either/1/either/into_either/trait.IntoEither.html#method.into_either">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.into_either_with" class="method trait-impl"><a class="src rightside" href="https://docs.rs/either/1/src/either/into_either.rs.html#55-57">Source</a><a href="#method.into_either_with" class="anchor">§</a><h4 class="code-header">fn <a href="https://docs.rs/either/1/either/into_either/trait.IntoEither.html#method.into_either_with" class="fn">into_either_with</a><F>(self, into_left: F) -> <a class="enum" href="https://docs.rs/either/1/either/enum.Either.html" title="enum either::Either">Either</a><Self, Self><div class="where">where
|
|
F: <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(&Self) -> <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.bool.html">bool</a>,</div></h4></section></summary><div class='docblock'>Converts <code>self</code> into a <a href="https://docs.rs/either/1/either/enum.Either.html#variant.Left" title="variant either::Either::Left"><code>Left</code></a> variant of <a href="https://docs.rs/either/1/either/enum.Either.html" title="enum either::Either"><code>Either<Self, Self></code></a>
|
|
if <code>into_left(&self)</code> returns <code>true</code>.
|
|
Converts <code>self</code> into a <a href="https://docs.rs/either/1/either/enum.Either.html#variant.Right" title="variant either::Either::Right"><code>Right</code></a> variant of <a href="https://docs.rs/either/1/either/enum.Either.html" title="enum either::Either"><code>Either<Self, Self></code></a>
|
|
otherwise. <a href="https://docs.rs/either/1/either/into_either/trait.IntoEither.html#method.into_either_with">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-IntoRequest%3CT%3E-for-T" class="impl"><a href="#impl-IntoRequest%3CT%3E-for-T" class="anchor">§</a><h3 class="code-header">impl<T> IntoRequest<T> for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.into_request" class="method trait-impl"><a href="#method.into_request" class="anchor">§</a><h4 class="code-header">fn <a class="fn">into_request</a>(self) -> Request<T></h4></section></summary><div class='docblock'>Wrap the input message <code>T</code> in a <code>tonic::Request</code></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-LayerExt%3CL%3E-for-L" class="impl"><a href="#impl-LayerExt%3CL%3E-for-L" class="anchor">§</a><h3 class="code-header">impl<L> LayerExt<L> for L</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.named_layer" class="method trait-impl"><a href="#method.named_layer" class="anchor">§</a><h4 class="code-header">fn <a class="fn">named_layer</a><S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S><div class="where">where
|
|
L: Layer<S>,</div></h4></section></summary><div class='docblock'>Applies the layer to a service and wraps it in [<code>Layered</code>].</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Pipe-for-T" class="impl"><a href="#impl-Pipe-for-T" class="anchor">§</a><h3 class="code-header">impl<T> Pipe for T<div class="where">where
|
|
T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.pipe" class="method trait-impl"><a href="#method.pipe" class="anchor">§</a><h4 class="code-header">fn <a class="fn">pipe</a><R>(self, func: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(Self) -> R) -> R<div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Pipes by value. This is generally the method you want to use. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.pipe_ref" class="method trait-impl"><a href="#method.pipe_ref" class="anchor">§</a><h4 class="code-header">fn <a class="fn">pipe_ref</a><'a, R>(&'a self, func: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(&'a Self) -> R) -> R<div class="where">where
|
|
R: 'a,</div></h4></section></summary><div class='docblock'>Borrows <code>self</code> and passes that borrow into the pipe function. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.pipe_ref_mut" class="method trait-impl"><a href="#method.pipe_ref_mut" class="anchor">§</a><h4 class="code-header">fn <a class="fn">pipe_ref_mut</a><'a, R>(&'a mut self, func: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(&'a mut Self) -> R) -> R<div class="where">where
|
|
R: 'a,</div></h4></section></summary><div class='docblock'>Mutably borrows <code>self</code> and passes that borrow into the pipe function. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.pipe_borrow" class="method trait-impl"><a href="#method.pipe_borrow" class="anchor">§</a><h4 class="code-header">fn <a class="fn">pipe_borrow</a><'a, B, R>(&'a self, func: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&'a B</a>) -> R) -> R<div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a><B>,
|
|
B: 'a + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,
|
|
R: 'a,</div></h4></section></summary><div class='docblock'>Borrows <code>self</code>, then passes <code>self.borrow()</code> into the pipe function. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.pipe_borrow_mut" class="method trait-impl"><a href="#method.pipe_borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a class="fn">pipe_borrow_mut</a><'a, B, R>(
|
|
&'a mut self,
|
|
func: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&'a mut B</a>) -> R,
|
|
) -> R<div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a><B>,
|
|
B: 'a + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,
|
|
R: 'a,</div></h4></section></summary><div class='docblock'>Mutably borrows <code>self</code>, then passes <code>self.borrow_mut()</code> into the pipe
|
|
function. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.pipe_as_ref" class="method trait-impl"><a href="#method.pipe_as_ref" class="anchor">§</a><h4 class="code-header">fn <a class="fn">pipe_as_ref</a><'a, U, R>(&'a self, func: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&'a U</a>) -> R) -> R<div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a><U>,
|
|
U: 'a + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,
|
|
R: 'a,</div></h4></section></summary><div class='docblock'>Borrows <code>self</code>, then passes <code>self.as_ref()</code> into the pipe function.</div></details><details class="toggle method-toggle" open><summary><section id="method.pipe_as_mut" class="method trait-impl"><a href="#method.pipe_as_mut" class="anchor">§</a><h4 class="code-header">fn <a class="fn">pipe_as_mut</a><'a, U, R>(&'a mut self, func: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&'a mut U</a>) -> R) -> R<div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.AsMut.html" title="trait core::convert::AsMut">AsMut</a><U>,
|
|
U: 'a + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,
|
|
R: 'a,</div></h4></section></summary><div class='docblock'>Mutably borrows <code>self</code>, then passes <code>self.as_mut()</code> into the pipe
|
|
function.</div></details><details class="toggle method-toggle" open><summary><section id="method.pipe_deref" class="method trait-impl"><a href="#method.pipe_deref" class="anchor">§</a><h4 class="code-header">fn <a class="fn">pipe_deref</a><'a, T, R>(&'a self, func: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&'a T</a>) -> R) -> R<div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/deref/trait.Deref.html" title="trait core::ops::deref::Deref">Deref</a><Target = T>,
|
|
T: 'a + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,
|
|
R: 'a,</div></h4></section></summary><div class='docblock'>Borrows <code>self</code>, then passes <code>self.deref()</code> into the pipe function.</div></details><details class="toggle method-toggle" open><summary><section id="method.pipe_deref_mut" class="method trait-impl"><a href="#method.pipe_deref_mut" class="anchor">§</a><h4 class="code-header">fn <a class="fn">pipe_deref_mut</a><'a, T, R>(
|
|
&'a mut self,
|
|
func: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&'a mut T</a>) -> R,
|
|
) -> R<div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/deref/trait.DerefMut.html" title="trait core::ops::deref::DerefMut">DerefMut</a><Target = T> + <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/deref/trait.Deref.html" title="trait core::ops::deref::Deref">Deref</a>,
|
|
T: 'a + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,
|
|
R: 'a,</div></h4></section></summary><div class='docblock'>Mutably borrows <code>self</code>, then passes <code>self.deref_mut()</code> into the pipe
|
|
function.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-PolicyExt-for-T" class="impl"><a href="#impl-PolicyExt-for-T" class="anchor">§</a><h3 class="code-header">impl<T> PolicyExt for T<div class="where">where
|
|
T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.and" class="method trait-impl"><a href="#method.and" class="anchor">§</a><h4 class="code-header">fn <a class="fn">and</a><P, B, E>(self, other: P) -> And<T, P><div class="where">where
|
|
T: Policy<B, E>,
|
|
P: Policy<B, E>,</div></h4></section></summary><div class='docblock'>Create a new <code>Policy</code> that returns [<code>Action::Follow</code>] only if <code>self</code> and <code>other</code> return
|
|
<code>Action::Follow</code>. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.or" class="method trait-impl"><a href="#method.or" class="anchor">§</a><h4 class="code-header">fn <a class="fn">or</a><P, B, E>(self, other: P) -> Or<T, P><div class="where">where
|
|
T: Policy<B, E>,
|
|
P: Policy<B, E>,</div></h4></section></summary><div class='docblock'>Create a new <code>Policy</code> that returns [<code>Action::Follow</code>] if either <code>self</code> or <code>other</code> returns
|
|
<code>Action::Follow</code>. <a>Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Same-for-T" class="impl"><a class="src rightside" href="https://docs.rs/typenum/1.18.0/src/typenum/type_operators.rs.html#34">Source</a><a href="#impl-Same-for-T" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://docs.rs/typenum/1.18.0/typenum/type_operators/trait.Same.html" title="trait typenum::type_operators::Same">Same</a> for T</h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Output" class="associatedtype trait-impl"><a class="src rightside" href="https://docs.rs/typenum/1.18.0/src/typenum/type_operators.rs.html#35">Source</a><a href="#associatedtype.Output" class="anchor">§</a><h4 class="code-header">type <a href="https://docs.rs/typenum/1.18.0/typenum/type_operators/trait.Same.html#associatedtype.Output" class="associatedtype">Output</a> = T</h4></section></summary><div class='docblock'>Should always be <code>Self</code></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-ServiceExt-for-T" class="impl"><a href="#impl-ServiceExt-for-T" class="anchor">§</a><h3 class="code-header">impl<T> ServiceExt for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.propagate_header" class="method trait-impl"><a href="#method.propagate_header" class="anchor">§</a><h4 class="code-header">fn <a class="fn">propagate_header</a>(self, header: HeaderName) -> PropagateHeader<Self><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Propagate a header from the request to the response. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.add_extension" class="method trait-impl"><a href="#method.add_extension" class="anchor">§</a><h4 class="code-header">fn <a class="fn">add_extension</a><T>(self, value: T) -> AddExtension<Self, T><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Add some shareable value to <a href="https://docs.rs/http/latest/http/struct.Extensions.html">request extensions</a>. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.map_request_body" class="method trait-impl"><a href="#method.map_request_body" class="anchor">§</a><h4 class="code-header">fn <a class="fn">map_request_body</a><F>(self, f: F) -> MapRequestBody<Self, F><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Apply a transformation to the request body. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.map_response_body" class="method trait-impl"><a href="#method.map_response_body" class="anchor">§</a><h4 class="code-header">fn <a class="fn">map_response_body</a><F>(self, f: F) -> MapResponseBody<Self, F><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Apply a transformation to the response body. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.compression" class="method trait-impl"><a href="#method.compression" class="anchor">§</a><h4 class="code-header">fn <a class="fn">compression</a>(self) -> Compression<Self><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Compresses response bodies. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.decompression" class="method trait-impl"><a href="#method.decompression" class="anchor">§</a><h4 class="code-header">fn <a class="fn">decompression</a>(self) -> Decompression<Self><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Decompress response bodies. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.trace_for_http" class="method trait-impl"><a href="#method.trace_for_http" class="anchor">§</a><h4 class="code-header">fn <a class="fn">trace_for_http</a>(self) -> Trace<Self, SharedClassifier<ServerErrorsAsFailures>><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>High level tracing that classifies responses using HTTP status codes. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.trace_for_grpc" class="method trait-impl"><a href="#method.trace_for_grpc" class="anchor">§</a><h4 class="code-header">fn <a class="fn">trace_for_grpc</a>(self) -> Trace<Self, SharedClassifier<GrpcErrorsAsFailures>><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>High level tracing that classifies responses using gRPC headers. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.follow_redirects" class="method trait-impl"><a href="#method.follow_redirects" class="anchor">§</a><h4 class="code-header">fn <a class="fn">follow_redirects</a>(self) -> FollowRedirect<Self><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Follow redirect resposes using the <a href="crate::follow_redirect::policy::Standard"><code>Standard</code></a> policy. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.sensitive_headers" class="method trait-impl"><a href="#method.sensitive_headers" class="anchor">§</a><h4 class="code-header">fn <a class="fn">sensitive_headers</a>(
|
|
self,
|
|
headers: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a><Item = HeaderName>,
|
|
) -> SetSensitiveRequestHeaders<SetSensitiveResponseHeaders<Self>><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Mark headers as <a href="https://docs.rs/http/latest/http/header/struct.HeaderValue.html#method.set_sensitive">sensitive</a> on both requests and responses. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.sensitive_request_headers" class="method trait-impl"><a href="#method.sensitive_request_headers" class="anchor">§</a><h4 class="code-header">fn <a class="fn">sensitive_request_headers</a>(
|
|
self,
|
|
headers: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a><Item = HeaderName>,
|
|
) -> SetSensitiveRequestHeaders<Self><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Mark headers as <a href="https://docs.rs/http/latest/http/header/struct.HeaderValue.html#method.set_sensitive">sensitive</a> on requests. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.sensitive_response_headers" class="method trait-impl"><a href="#method.sensitive_response_headers" class="anchor">§</a><h4 class="code-header">fn <a class="fn">sensitive_response_headers</a>(
|
|
self,
|
|
headers: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a><Item = HeaderName>,
|
|
) -> SetSensitiveResponseHeaders<Self><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Mark headers as <a href="https://docs.rs/http/latest/http/header/struct.HeaderValue.html#method.set_sensitive">sensitive</a> on responses. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.override_request_header" class="method trait-impl"><a href="#method.override_request_header" class="anchor">§</a><h4 class="code-header">fn <a class="fn">override_request_header</a><M>(
|
|
self,
|
|
header_name: HeaderName,
|
|
make: M,
|
|
) -> SetRequestHeader<Self, M><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Insert a header into the request. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.append_request_header" class="method trait-impl"><a href="#method.append_request_header" class="anchor">§</a><h4 class="code-header">fn <a class="fn">append_request_header</a><M>(
|
|
self,
|
|
header_name: HeaderName,
|
|
make: M,
|
|
) -> SetRequestHeader<Self, M><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Append a header into the request. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.insert_request_header_if_not_present" class="method trait-impl"><a href="#method.insert_request_header_if_not_present" class="anchor">§</a><h4 class="code-header">fn <a class="fn">insert_request_header_if_not_present</a><M>(
|
|
self,
|
|
header_name: HeaderName,
|
|
make: M,
|
|
) -> SetRequestHeader<Self, M><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Insert a header into the request, if the header is not already present. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.override_response_header" class="method trait-impl"><a href="#method.override_response_header" class="anchor">§</a><h4 class="code-header">fn <a class="fn">override_response_header</a><M>(
|
|
self,
|
|
header_name: HeaderName,
|
|
make: M,
|
|
) -> SetResponseHeader<Self, M><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Insert a header into the response. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.append_response_header" class="method trait-impl"><a href="#method.append_response_header" class="anchor">§</a><h4 class="code-header">fn <a class="fn">append_response_header</a><M>(
|
|
self,
|
|
header_name: HeaderName,
|
|
make: M,
|
|
) -> SetResponseHeader<Self, M><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Append a header into the response. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.insert_response_header_if_not_present" class="method trait-impl"><a href="#method.insert_response_header_if_not_present" class="anchor">§</a><h4 class="code-header">fn <a class="fn">insert_response_header_if_not_present</a><M>(
|
|
self,
|
|
header_name: HeaderName,
|
|
make: M,
|
|
) -> SetResponseHeader<Self, M><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Insert a header into the response, if the header is not already present. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.set_request_id" class="method trait-impl"><a href="#method.set_request_id" class="anchor">§</a><h4 class="code-header">fn <a class="fn">set_request_id</a><M>(
|
|
self,
|
|
header_name: HeaderName,
|
|
make_request_id: M,
|
|
) -> SetRequestId<Self, M><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,
|
|
M: MakeRequestId,</div></h4></section></summary><div class='docblock'>Add request id header and extension. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.set_x_request_id" class="method trait-impl"><a href="#method.set_x_request_id" class="anchor">§</a><h4 class="code-header">fn <a class="fn">set_x_request_id</a><M>(self, make_request_id: M) -> SetRequestId<Self, M><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,
|
|
M: MakeRequestId,</div></h4></section></summary><div class='docblock'>Add request id header and extension, using <code>x-request-id</code> as the header name. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.propagate_request_id" class="method trait-impl"><a href="#method.propagate_request_id" class="anchor">§</a><h4 class="code-header">fn <a class="fn">propagate_request_id</a>(
|
|
self,
|
|
header_name: HeaderName,
|
|
) -> PropagateRequestId<Self><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Propgate request ids from requests to responses. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.propagate_x_request_id" class="method trait-impl"><a href="#method.propagate_x_request_id" class="anchor">§</a><h4 class="code-header">fn <a class="fn">propagate_x_request_id</a>(self) -> PropagateRequestId<Self><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Propgate request ids from requests to responses, using <code>x-request-id</code> as the header name. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.catch_panic" class="method trait-impl"><a href="#method.catch_panic" class="anchor">§</a><h4 class="code-header">fn <a class="fn">catch_panic</a>(self) -> CatchPanic<Self, DefaultResponseForPanic><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Catch panics and convert them into <code>500 Internal Server</code> responses. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.request_body_limit" class="method trait-impl"><a href="#method.request_body_limit" class="anchor">§</a><h4 class="code-header">fn <a class="fn">request_body_limit</a>(self, limit: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.usize.html">usize</a>) -> RequestBodyLimit<Self><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Intercept requests with over-sized payloads and convert them into
|
|
<code>413 Payload Too Large</code> responses. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.trim_trailing_slash" class="method trait-impl"><a href="#method.trim_trailing_slash" class="anchor">§</a><h4 class="code-header">fn <a class="fn">trim_trailing_slash</a>(self) -> NormalizePath<Self><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Remove trailing slashes from paths. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.append_trailing_slash" class="method trait-impl"><a href="#method.append_trailing_slash" class="anchor">§</a><h4 class="code-header">fn <a class="fn">append_trailing_slash</a>(self) -> NormalizePath<Self><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Append trailing slash to paths. <a>Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Tap-for-T" class="impl"><a href="#impl-Tap-for-T" class="anchor">§</a><h3 class="code-header">impl<T> Tap for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.tap" class="method trait-impl"><a href="#method.tap" class="anchor">§</a><h4 class="code-header">fn <a class="fn">tap</a>(self, func: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(&Self)) -> Self</h4></section></summary><div class='docblock'>Immutable access to a value. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.tap_mut" class="method trait-impl"><a href="#method.tap_mut" class="anchor">§</a><h4 class="code-header">fn <a class="fn">tap_mut</a>(self, func: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(&mut Self)) -> Self</h4></section></summary><div class='docblock'>Mutable access to a value. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.tap_borrow" class="method trait-impl"><a href="#method.tap_borrow" class="anchor">§</a><h4 class="code-header">fn <a class="fn">tap_borrow</a><B>(self, func: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&B</a>)) -> Self<div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a><B>,
|
|
B: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Immutable access to the <code>Borrow<B></code> of a value. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.tap_borrow_mut" class="method trait-impl"><a href="#method.tap_borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a class="fn">tap_borrow_mut</a><B>(self, func: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&mut B</a>)) -> Self<div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a><B>,
|
|
B: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Mutable access to the <code>BorrowMut<B></code> of a value. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.tap_ref" class="method trait-impl"><a href="#method.tap_ref" class="anchor">§</a><h4 class="code-header">fn <a class="fn">tap_ref</a><R>(self, func: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&R</a>)) -> Self<div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a><R>,
|
|
R: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Immutable access to the <code>AsRef<R></code> view of a value. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.tap_ref_mut" class="method trait-impl"><a href="#method.tap_ref_mut" class="anchor">§</a><h4 class="code-header">fn <a class="fn">tap_ref_mut</a><R>(self, func: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&mut R</a>)) -> Self<div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.AsMut.html" title="trait core::convert::AsMut">AsMut</a><R>,
|
|
R: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Mutable access to the <code>AsMut<R></code> view of a value. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.tap_deref" class="method trait-impl"><a href="#method.tap_deref" class="anchor">§</a><h4 class="code-header">fn <a class="fn">tap_deref</a><T>(self, func: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&T</a>)) -> Self<div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/deref/trait.Deref.html" title="trait core::ops::deref::Deref">Deref</a><Target = T>,
|
|
T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Immutable access to the <code>Deref::Target</code> of a value. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.tap_deref_mut" class="method trait-impl"><a href="#method.tap_deref_mut" class="anchor">§</a><h4 class="code-header">fn <a class="fn">tap_deref_mut</a><T>(self, func: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&mut T</a>)) -> Self<div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/deref/trait.DerefMut.html" title="trait core::ops::deref::DerefMut">DerefMut</a><Target = T> + <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/deref/trait.Deref.html" title="trait core::ops::deref::Deref">Deref</a>,
|
|
T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Mutable access to the <code>Deref::Target</code> of a value. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.tap_dbg" class="method trait-impl"><a href="#method.tap_dbg" class="anchor">§</a><h4 class="code-header">fn <a class="fn">tap_dbg</a>(self, func: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(&Self)) -> Self</h4></section></summary><div class='docblock'>Calls <code>.tap()</code> only in debug builds, and is erased in release builds.</div></details><details class="toggle method-toggle" open><summary><section id="method.tap_mut_dbg" class="method trait-impl"><a href="#method.tap_mut_dbg" class="anchor">§</a><h4 class="code-header">fn <a class="fn">tap_mut_dbg</a>(self, func: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(&mut Self)) -> Self</h4></section></summary><div class='docblock'>Calls <code>.tap_mut()</code> only in debug builds, and is erased in release
|
|
builds.</div></details><details class="toggle method-toggle" open><summary><section id="method.tap_borrow_dbg" class="method trait-impl"><a href="#method.tap_borrow_dbg" class="anchor">§</a><h4 class="code-header">fn <a class="fn">tap_borrow_dbg</a><B>(self, func: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&B</a>)) -> Self<div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a><B>,
|
|
B: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Calls <code>.tap_borrow()</code> only in debug builds, and is erased in release
|
|
builds.</div></details><details class="toggle method-toggle" open><summary><section id="method.tap_borrow_mut_dbg" class="method trait-impl"><a href="#method.tap_borrow_mut_dbg" class="anchor">§</a><h4 class="code-header">fn <a class="fn">tap_borrow_mut_dbg</a><B>(self, func: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&mut B</a>)) -> Self<div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a><B>,
|
|
B: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Calls <code>.tap_borrow_mut()</code> only in debug builds, and is erased in release
|
|
builds.</div></details><details class="toggle method-toggle" open><summary><section id="method.tap_ref_dbg" class="method trait-impl"><a href="#method.tap_ref_dbg" class="anchor">§</a><h4 class="code-header">fn <a class="fn">tap_ref_dbg</a><R>(self, func: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&R</a>)) -> Self<div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.AsRef.html" title="trait core::convert::AsRef">AsRef</a><R>,
|
|
R: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Calls <code>.tap_ref()</code> only in debug builds, and is erased in release
|
|
builds.</div></details><details class="toggle method-toggle" open><summary><section id="method.tap_ref_mut_dbg" class="method trait-impl"><a href="#method.tap_ref_mut_dbg" class="anchor">§</a><h4 class="code-header">fn <a class="fn">tap_ref_mut_dbg</a><R>(self, func: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&mut R</a>)) -> Self<div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.AsMut.html" title="trait core::convert::AsMut">AsMut</a><R>,
|
|
R: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Calls <code>.tap_ref_mut()</code> only in debug builds, and is erased in release
|
|
builds.</div></details><details class="toggle method-toggle" open><summary><section id="method.tap_deref_dbg" class="method trait-impl"><a href="#method.tap_deref_dbg" class="anchor">§</a><h4 class="code-header">fn <a class="fn">tap_deref_dbg</a><T>(self, func: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&T</a>)) -> Self<div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/deref/trait.Deref.html" title="trait core::ops::deref::Deref">Deref</a><Target = T>,
|
|
T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Calls <code>.tap_deref()</code> only in debug builds, and is erased in release
|
|
builds.</div></details><details class="toggle method-toggle" open><summary><section id="method.tap_deref_mut_dbg" class="method trait-impl"><a href="#method.tap_deref_mut_dbg" class="anchor">§</a><h4 class="code-header">fn <a class="fn">tap_deref_mut_dbg</a><T>(self, func: impl <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(<a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&mut T</a>)) -> Self<div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/deref/trait.DerefMut.html" title="trait core::ops::deref::DerefMut">DerefMut</a><Target = T> + <a class="trait" href="https://doc.rust-lang.org/nightly/core/ops/deref/trait.Deref.html" title="trait core::ops::deref::Deref">Deref</a>,
|
|
T: ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h4></section></summary><div class='docblock'>Calls <code>.tap_deref_mut()</code> only in debug builds, and is erased in release
|
|
builds.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-ToOwned-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/alloc/borrow.rs.html#84-86">Source</a><a href="#impl-ToOwned-for-T" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html" title="trait alloc::borrow::ToOwned">ToOwned</a> for T<div class="where">where
|
|
T: <a class="trait" href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Owned" class="associatedtype trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/alloc/borrow.rs.html#88">Source</a><a href="#associatedtype.Owned" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html#associatedtype.Owned" class="associatedtype">Owned</a> = T</h4></section></summary><div class='docblock'>The resulting type after obtaining ownership.</div></details><details class="toggle method-toggle" open><summary><section id="method.to_owned" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/alloc/borrow.rs.html#89">Source</a><a href="#method.to_owned" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html#tymethod.to_owned" class="fn">to_owned</a>(&self) -> T</h4></section></summary><div class='docblock'>Creates owned data from borrowed data, usually by cloning. <a href="https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html#tymethod.to_owned">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.clone_into" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/alloc/borrow.rs.html#93">Source</a><a href="#method.clone_into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html#method.clone_into" class="fn">clone_into</a>(&self, target: <a class="primitive" href="https://doc.rust-lang.org/nightly/std/primitive.reference.html">&mut T</a>)</h4></section></summary><div class='docblock'>Uses borrowed data to replace owned data, usually by cloning. <a href="https://doc.rust-lang.org/nightly/alloc/borrow/trait.ToOwned.html#method.clone_into">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-ToString-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/alloc/string.rs.html#2783">Source</a><a href="#impl-ToString-for-T" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/nightly/alloc/string/trait.ToString.html" title="trait alloc::string::ToString">ToString</a> for T<div class="where">where
|
|
T: <a class="trait" href="https://doc.rust-lang.org/nightly/core/fmt/trait.Display.html" title="trait core::fmt::Display">Display</a> + ?<a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.to_string" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/alloc/string.rs.html#2785">Source</a><a href="#method.to_string" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/alloc/string/trait.ToString.html#tymethod.to_string" class="fn">to_string</a>(&self) -> <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/string/struct.String.html" title="struct alloc::string::String">String</a></h4></section></summary><div class='docblock'>Converts the given value to a <code>String</code>. <a href="https://doc.rust-lang.org/nightly/alloc/string/trait.ToString.html#tymethod.to_string">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-ToStringFallible-for-T" class="impl"><a href="#impl-ToStringFallible-for-T" class="anchor">§</a><h3 class="code-header">impl<T> ToStringFallible for T<div class="where">where
|
|
T: <a class="trait" href="https://doc.rust-lang.org/nightly/core/fmt/trait.Display.html" title="trait core::fmt::Display">Display</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.try_to_string" class="method trait-impl"><a href="#method.try_to_string" class="anchor">§</a><h4 class="code-header">fn <a class="fn">try_to_string</a>(&self) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><<a class="struct" href="https://doc.rust-lang.org/nightly/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>, <a class="struct" href="https://doc.rust-lang.org/nightly/alloc/collections/struct.TryReserveError.html" title="struct alloc::collections::TryReserveError">TryReserveError</a>></h4></section></summary><div class="docblock"><p><a href="https://doc.rust-lang.org/nightly/alloc/string/trait.ToString.html#tymethod.to_string" title="method alloc::string::ToString::to_string"><code>ToString::to_string</code></a>, but without panic on OOM.</p>
|
|
</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-TryConv-for-T" class="impl"><a href="#impl-TryConv-for-T" class="anchor">§</a><h3 class="code-header">impl<T> TryConv for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.try_conv" class="method trait-impl"><a href="#method.try_conv" class="anchor">§</a><h4 class="code-header">fn <a class="fn">try_conv</a><T>(self) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><T, Self::<a class="associatedtype" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryInto.html#associatedtype.Error" title="type core::convert::TryInto::Error">Error</a>><div class="where">where
|
|
Self: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryInto.html" title="trait core::convert::TryInto">TryInto</a><T>,</div></h4></section></summary><div class='docblock'>Attempts to convert <code>self</code> into <code>T</code> using <code>TryInto<T></code>. <a>Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-TryFrom%3CU%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/convert/mod.rs.html#827-829">Source</a><a href="#impl-TryFrom%3CU%3E-for-T" class="anchor">§</a><h3 class="code-header">impl<T, U> <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><U> for T<div class="where">where
|
|
U: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><T>,</div></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Error-1" class="associatedtype trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/convert/mod.rs.html#831">Source</a><a href="#associatedtype.Error-1" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#associatedtype.Error" class="associatedtype">Error</a> = <a class="enum" href="https://doc.rust-lang.org/nightly/core/convert/enum.Infallible.html" title="enum core::convert::Infallible">Infallible</a></h4></section></summary><div class='docblock'>The type returned in the event of a conversion error.</div></details><details class="toggle method-toggle" open><summary><section id="method.try_from" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/convert/mod.rs.html#834">Source</a><a href="#method.try_from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#tymethod.try_from" class="fn">try_from</a>(value: U) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><T, <T as <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><U>>::<a class="associatedtype" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>></h4></section></summary><div class='docblock'>Performs the conversion.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-TryInto%3CU%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/convert/mod.rs.html#811-813">Source</a><a href="#impl-TryInto%3CU%3E-for-T" class="anchor">§</a><h3 class="code-header">impl<T, U> <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryInto.html" title="trait core::convert::TryInto">TryInto</a><U> for T<div class="where">where
|
|
U: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>,</div></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Error" class="associatedtype trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/convert/mod.rs.html#815">Source</a><a href="#associatedtype.Error" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/nightly/core/convert/trait.TryInto.html#associatedtype.Error" class="associatedtype">Error</a> = <U as <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>>::<a class="associatedtype" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a></h4></section></summary><div class='docblock'>The type returned in the event of a conversion error.</div></details><details class="toggle method-toggle" open><summary><section id="method.try_into" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/nightly/src/core/convert/mod.rs.html#818">Source</a><a href="#method.try_into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/nightly/core/convert/trait.TryInto.html#tymethod.try_into" class="fn">try_into</a>(self) -> <a class="enum" href="https://doc.rust-lang.org/nightly/core/result/enum.Result.html" title="enum core::result::Result">Result</a><U, <U as <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>>::<a class="associatedtype" href="https://doc.rust-lang.org/nightly/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>></h4></section></summary><div class='docblock'>Performs the conversion.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-VZip%3CV%3E-for-T" class="impl"><a href="#impl-VZip%3CV%3E-for-T" class="anchor">§</a><h3 class="code-header">impl<V, T> VZip<V> for T<div class="where">where
|
|
V: MultiLane<T>,</div></h3></section></summary><div class="impl-items"><section id="method.vzip" class="method trait-impl"><a href="#method.vzip" class="anchor">§</a><h4 class="code-header">fn <a class="fn">vzip</a>(self) -> V</h4></section></div></details><details class="toggle implementors-toggle"><summary><section id="impl-WithSubscriber-for-T" class="impl"><a href="#impl-WithSubscriber-for-T" class="anchor">§</a><h3 class="code-header">impl<T> WithSubscriber for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.with_subscriber" class="method trait-impl"><a href="#method.with_subscriber" class="anchor">§</a><h4 class="code-header">fn <a class="fn">with_subscriber</a><S>(self, subscriber: S) -> WithDispatch<Self><div class="where">where
|
|
S: <a class="trait" href="https://doc.rust-lang.org/nightly/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><Dispatch>,</div></h4></section></summary><div class='docblock'>Attaches the provided <a href="super::Subscriber"><code>Subscriber</code></a> to this type, returning a
|
|
[<code>WithDispatch</code>] wrapper. <a>Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.with_current_subscriber" class="method trait-impl"><a href="#method.with_current_subscriber" class="anchor">§</a><h4 class="code-header">fn <a class="fn">with_current_subscriber</a>(self) -> WithDispatch<Self></h4></section></summary><div class='docblock'>Attaches the current <a href="crate::dispatcher#setting-the-default-subscriber">default</a> <a href="super::Subscriber"><code>Subscriber</code></a> to this type, returning a
|
|
[<code>WithDispatch</code>] wrapper. <a>Read more</a></div></details></div></details><section id="impl-Allocation-for-T" class="impl"><a href="#impl-Allocation-for-T" class="anchor">§</a><h3 class="code-header">impl<T> Allocation for T<div class="where">where
|
|
T: <a class="trait" href="https://doc.rust-lang.org/nightly/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> + <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a>,</div></h3></section><section id="impl-Any-for-T-1" class="impl"><a href="#impl-Any-for-T-1" class="anchor">§</a><h3 class="code-header">impl<T> Any for T<div class="where">where
|
|
T: <a class="trait" href="https://doc.rust-lang.org/nightly/core/any/trait.Any.html" title="trait core::any::Any">Any</a>,</div></h3></section><section id="impl-CloneAny-for-T" class="impl"><a href="#impl-CloneAny-for-T" class="anchor">§</a><h3 class="code-header">impl<T> CloneAny for T<div class="where">where
|
|
T: <a class="trait" href="https://doc.rust-lang.org/nightly/core/any/trait.Any.html" title="trait core::any::Any">Any</a> + <a class="trait" href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></h3></section><section id="impl-CloneAnySend-for-T" class="impl"><a href="#impl-CloneAnySend-for-T" class="anchor">§</a><h3 class="code-header">impl<T> CloneAnySend for T<div class="where">where
|
|
T: <a class="trait" href="https://doc.rust-lang.org/nightly/core/any/trait.Any.html" title="trait core::any::Any">Any</a> + <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></h3></section><section id="impl-CloneAnySendSync-for-T" class="impl"><a href="#impl-CloneAnySendSync-for-T" class="anchor">§</a><h3 class="code-header">impl<T> CloneAnySendSync for T<div class="where">where
|
|
T: <a class="trait" href="https://doc.rust-lang.org/nightly/core/any/trait.Any.html" title="trait core::any::Any">Any</a> + <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></h3></section><section id="impl-CloneAnySync-for-T" class="impl"><a href="#impl-CloneAnySync-for-T" class="anchor">§</a><h3 class="code-header">impl<T> CloneAnySync for T<div class="where">where
|
|
T: <a class="trait" href="https://doc.rust-lang.org/nightly/core/any/trait.Any.html" title="trait core::any::Any">Any</a> + <a class="trait" href="https://doc.rust-lang.org/nightly/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/nightly/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></h3></section><section id="impl-DeserializeOwned-for-T" class="impl"><a class="src rightside" href="https://docs.rs/serde_core/1.0.228/src/serde_core/de/mod.rs.html#633">Source</a><a href="#impl-DeserializeOwned-for-T" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://docs.rs/serde_core/1.0.228/serde_core/de/trait.DeserializeOwned.html" title="trait serde_core::de::DeserializeOwned">DeserializeOwned</a> for T<div class="where">where
|
|
T: for<'de> <a class="trait" href="https://docs.rs/serde_core/1.0.228/serde_core/de/trait.Deserialize.html" title="trait serde_core::de::Deserialize">Deserialize</a><'de>,</div></h3></section><section id="impl-ErasedDestructor-for-T" class="impl"><a href="#impl-ErasedDestructor-for-T" class="anchor">§</a><h3 class="code-header">impl<T> ErasedDestructor for T<div class="where">where
|
|
T: 'static,</div></h3></section></div></section></div></main></body></html> |