Adding large folders

This commit is contained in:
2026-02-26 12:00:21 -05:00
parent 5400d82acd
commit 49701c85ad
47332 changed files with 1942573 additions and 0 deletions

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,12 @@
<!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="Executes an implementation of `Visitor` in constant stack space."><title>visit in regex_syntax::ast - 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-ca0dd0c4.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="regex_syntax" data-themes="" data-resource-suffix="" data-rustdoc-version="1.93.1 (01f6ddf75 2026-02-11) (Arch Linux rust 1:1.93.1-1)" data-channel="1.93.1" data-search-js="search-9e2438ea.js" data-stringdex-js="stringdex-a3946164.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-a410ff4d.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 fn"><!--[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="#">visit</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../regex_syntax/index.html">regex_<wbr>syntax</a><span class="version">0.8.10</span></h2></div><div class="sidebar-elems"><div id="rustdoc-modnav"><h2><a href="index.html">In regex_<wbr>syntax::<wbr>ast</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">regex_syntax</a>::<wbr><a href="index.html">ast</a></div><h1>Function <span class="fn">visit</span>&nbsp;<button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"><a class="src" href="../../src/regex_syntax/ast/visitor.rs.html#118-120">Source</a> </span></div><pre class="rust item-decl"><code>pub fn visit&lt;V: <a class="trait" href="trait.Visitor.html" title="trait regex_syntax::ast::Visitor">Visitor</a>&gt;(ast: &amp;<a class="enum" href="enum.Ast.html" title="enum regex_syntax::ast::Ast">Ast</a>, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Output" title="type regex_syntax::ast::Visitor::Output">Output</a>, V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Err" title="type regex_syntax::ast::Visitor::Err">Err</a>&gt;</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Executes an implementation of <code>Visitor</code> in constant stack space.</p>
<p>This function will visit every node in the given <code>Ast</code> while calling the
appropriate methods provided by the <a href="trait.Visitor.html" title="trait regex_syntax::ast::Visitor"><code>Visitor</code></a> trait.</p>
<p>The primary use case for this method is when one wants to perform case
analysis over an <code>Ast</code> without using a stack size proportional to the depth
of the <code>Ast</code>. Namely, this method will instead use constant stack size, but
will use heap space proportional to the size of the <code>Ast</code>. This may be
desirable in cases where the size of <code>Ast</code> is proportional to end user
input.</p>
<p>If the visitor returns an error at any point, then visiting is stopped and
the error is returned.</p>
</div></details></section></div></main></body></html>

View File

@@ -0,0 +1,4 @@
<!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="Defines an abstract syntax for regular expressions."><title>regex_syntax::ast - 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-ca0dd0c4.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="regex_syntax" data-themes="" data-resource-suffix="" data-rustdoc-version="1.93.1 (01f6ddf75 2026-02-11) (Arch Linux rust 1:1.93.1-1)" data-channel="1.93.1" data-search-js="search-9e2438ea.js" data-stringdex-js="stringdex-a3946164.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-a410ff4d.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 mod"><!--[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="#">Module ast</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../regex_syntax/index.html">regex_<wbr>syntax</a><span class="version">0.8.10</span></h2></div><div class="sidebar-elems"><section id="rustdoc-toc"><h2 class="location"><a href="#">Module ast</a></h2><h3><a href="#modules">Module Items</a></h3><ul class="block"><li><a href="#modules" title="Modules">Modules</a></li><li><a href="#structs" title="Structs">Structs</a></li><li><a href="#enums" title="Enums">Enums</a></li><li><a href="#traits" title="Traits">Traits</a></li><li><a href="#functions" title="Functions">Functions</a></li></ul></section><div id="rustdoc-modnav"><h2 class="in-crate"><a href="../index.html">In crate regex_<wbr>syntax</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">regex_syntax</a></div><h1>Module <span>ast</span>&nbsp;<button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"><a class="src" href="../../src/regex_syntax/ast/mod.rs.html#1-1807">Source</a> </span></div><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Defines an abstract syntax for regular expressions.</p>
</div></details><h2 id="modules" class="section-header">Modules<a href="#modules" class="anchor">§</a></h2><dl class="item-table"><dt><a class="mod" href="parse/index.html" title="mod regex_syntax::ast::parse">parse</a></dt><dd>This module provides a regular expression parser.</dd><dt><a class="mod" href="print/index.html" title="mod regex_syntax::ast::print">print</a></dt><dd>This module provides a regular expression printer for <code>Ast</code>.</dd></dl><h2 id="structs" class="section-header">Structs<a href="#structs" class="anchor">§</a></h2><dl class="item-table"><dt><a class="struct" href="struct.Alternation.html" title="struct regex_syntax::ast::Alternation">Alternation</a></dt><dd>An alternation of regular expressions.</dd><dt><a class="struct" href="struct.Assertion.html" title="struct regex_syntax::ast::Assertion">Assertion</a></dt><dd>A single zero-width assertion.</dd><dt><a class="struct" href="struct.CaptureName.html" title="struct regex_syntax::ast::CaptureName">Capture<wbr>Name</a></dt><dd>A capture name.</dd><dt><a class="struct" href="struct.ClassAscii.html" title="struct regex_syntax::ast::ClassAscii">Class<wbr>Ascii</a></dt><dd>An ASCII character class.</dd><dt><a class="struct" href="struct.ClassBracketed.html" title="struct regex_syntax::ast::ClassBracketed">Class<wbr>Bracketed</a></dt><dd>A bracketed character class, e.g., <code>[a-z0-9]</code>.</dd><dt><a class="struct" href="struct.ClassPerl.html" title="struct regex_syntax::ast::ClassPerl">Class<wbr>Perl</a></dt><dd>A Perl character class.</dd><dt><a class="struct" href="struct.ClassSetBinaryOp.html" title="struct regex_syntax::ast::ClassSetBinaryOp">Class<wbr>SetBinary<wbr>Op</a></dt><dd>A Unicode character class set operation.</dd><dt><a class="struct" href="struct.ClassSetRange.html" title="struct regex_syntax::ast::ClassSetRange">Class<wbr>SetRange</a></dt><dd>A single character class range in a set.</dd><dt><a class="struct" href="struct.ClassSetUnion.html" title="struct regex_syntax::ast::ClassSetUnion">Class<wbr>SetUnion</a></dt><dd>A union of items inside a character class set.</dd><dt><a class="struct" href="struct.ClassUnicode.html" title="struct regex_syntax::ast::ClassUnicode">Class<wbr>Unicode</a></dt><dd>A Unicode character class.</dd><dt><a class="struct" href="struct.Comment.html" title="struct regex_syntax::ast::Comment">Comment</a></dt><dd>A comment from a regular expression with an associated span.</dd><dt><a class="struct" href="struct.Concat.html" title="struct regex_syntax::ast::Concat">Concat</a></dt><dd>A concatenation of regular expressions.</dd><dt><a class="struct" href="struct.Error.html" title="struct regex_syntax::ast::Error">Error</a></dt><dd>An error that occurred while parsing a regular expression into an abstract
syntax tree.</dd><dt><a class="struct" href="struct.Flags.html" title="struct regex_syntax::ast::Flags">Flags</a></dt><dd>A group of flags.</dd><dt><a class="struct" href="struct.FlagsItem.html" title="struct regex_syntax::ast::FlagsItem">Flags<wbr>Item</a></dt><dd>A single item in a group of flags.</dd><dt><a class="struct" href="struct.Group.html" title="struct regex_syntax::ast::Group">Group</a></dt><dd>A grouped regular expression.</dd><dt><a class="struct" href="struct.Literal.html" title="struct regex_syntax::ast::Literal">Literal</a></dt><dd>A single literal expression.</dd><dt><a class="struct" href="struct.Position.html" title="struct regex_syntax::ast::Position">Position</a></dt><dd>A single position in a regular expression.</dd><dt><a class="struct" href="struct.Repetition.html" title="struct regex_syntax::ast::Repetition">Repetition</a></dt><dd>A repetition operation applied to a regular expression.</dd><dt><a class="struct" href="struct.RepetitionOp.html" title="struct regex_syntax::ast::RepetitionOp">Repetition<wbr>Op</a></dt><dd>The repetition operator itself.</dd><dt><a class="struct" href="struct.SetFlags.html" title="struct regex_syntax::ast::SetFlags">SetFlags</a></dt><dd>A group of flags that is not applied to a particular regular expression.</dd><dt><a class="struct" href="struct.Span.html" title="struct regex_syntax::ast::Span">Span</a></dt><dd>Span represents the position information of a single AST item.</dd><dt><a class="struct" href="struct.WithComments.html" title="struct regex_syntax::ast::WithComments">With<wbr>Comments</a></dt><dd>An abstract syntax tree for a singular expression along with comments
found.</dd></dl><h2 id="enums" class="section-header">Enums<a href="#enums" class="anchor">§</a></h2><dl class="item-table"><dt><a class="enum" href="enum.AssertionKind.html" title="enum regex_syntax::ast::AssertionKind">Assertion<wbr>Kind</a></dt><dd>An assertion kind.</dd><dt><a class="enum" href="enum.Ast.html" title="enum regex_syntax::ast::Ast">Ast</a></dt><dd>An abstract syntax tree for a single regular expression.</dd><dt><a class="enum" href="enum.ClassAsciiKind.html" title="enum regex_syntax::ast::ClassAsciiKind">Class<wbr>Ascii<wbr>Kind</a></dt><dd>The available ASCII character classes.</dd><dt><a class="enum" href="enum.ClassPerlKind.html" title="enum regex_syntax::ast::ClassPerlKind">Class<wbr>Perl<wbr>Kind</a></dt><dd>The available Perl character classes.</dd><dt><a class="enum" href="enum.ClassSet.html" title="enum regex_syntax::ast::ClassSet">Class<wbr>Set</a></dt><dd>A character class set.</dd><dt><a class="enum" href="enum.ClassSetBinaryOpKind.html" title="enum regex_syntax::ast::ClassSetBinaryOpKind">Class<wbr>SetBinary<wbr>OpKind</a></dt><dd>The type of a Unicode character class set operation.</dd><dt><a class="enum" href="enum.ClassSetItem.html" title="enum regex_syntax::ast::ClassSetItem">Class<wbr>SetItem</a></dt><dd>A single component of a character class set.</dd><dt><a class="enum" href="enum.ClassUnicodeKind.html" title="enum regex_syntax::ast::ClassUnicodeKind">Class<wbr>Unicode<wbr>Kind</a></dt><dd>The available forms of Unicode character classes.</dd><dt><a class="enum" href="enum.ClassUnicodeOpKind.html" title="enum regex_syntax::ast::ClassUnicodeOpKind">Class<wbr>Unicode<wbr>OpKind</a></dt><dd>The type of op used in a Unicode character class.</dd><dt><a class="enum" href="enum.ErrorKind.html" title="enum regex_syntax::ast::ErrorKind">Error<wbr>Kind</a></dt><dd>The type of an error that occurred while building an AST.</dd><dt><a class="enum" href="enum.Flag.html" title="enum regex_syntax::ast::Flag">Flag</a></dt><dd>A single flag.</dd><dt><a class="enum" href="enum.FlagsItemKind.html" title="enum regex_syntax::ast::FlagsItemKind">Flags<wbr>Item<wbr>Kind</a></dt><dd>The kind of an item in a group of flags.</dd><dt><a class="enum" href="enum.GroupKind.html" title="enum regex_syntax::ast::GroupKind">Group<wbr>Kind</a></dt><dd>The kind of a group.</dd><dt><a class="enum" href="enum.HexLiteralKind.html" title="enum regex_syntax::ast::HexLiteralKind">HexLiteral<wbr>Kind</a></dt><dd>The type of a Unicode hex literal.</dd><dt><a class="enum" href="enum.LiteralKind.html" title="enum regex_syntax::ast::LiteralKind">Literal<wbr>Kind</a></dt><dd>The kind of a single literal expression.</dd><dt><a class="enum" href="enum.RepetitionKind.html" title="enum regex_syntax::ast::RepetitionKind">Repetition<wbr>Kind</a></dt><dd>The kind of a repetition operator.</dd><dt><a class="enum" href="enum.RepetitionRange.html" title="enum regex_syntax::ast::RepetitionRange">Repetition<wbr>Range</a></dt><dd>A range repetition operator.</dd><dt><a class="enum" href="enum.SpecialLiteralKind.html" title="enum regex_syntax::ast::SpecialLiteralKind">Special<wbr>Literal<wbr>Kind</a></dt><dd>The type of a special literal.</dd></dl><h2 id="traits" class="section-header">Traits<a href="#traits" class="anchor">§</a></h2><dl class="item-table"><dt><a class="trait" href="trait.Visitor.html" title="trait regex_syntax::ast::Visitor">Visitor</a></dt><dd>A trait for visiting an abstract syntax tree (AST) in depth first order.</dd></dl><h2 id="functions" class="section-header">Functions<a href="#functions" class="anchor">§</a></h2><dl class="item-table"><dt><a class="fn" href="fn.visit.html" title="fn regex_syntax::ast::visit">visit</a></dt><dd>Executes an implementation of <code>Visitor</code> in constant stack space.</dd></dl></section></div></main></body></html>

View File

@@ -0,0 +1,2 @@
<!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="This module provides a regular expression parser."><title>regex_syntax::ast::parse - 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-ca0dd0c4.css"><meta name="rustdoc-vars" data-root-path="../../../" data-static-root-path="../../../static.files/" data-current-crate="regex_syntax" data-themes="" data-resource-suffix="" data-rustdoc-version="1.93.1 (01f6ddf75 2026-02-11) (Arch Linux rust 1:1.93.1-1)" data-channel="1.93.1" data-search-js="search-9e2438ea.js" data-stringdex-js="stringdex-a3946164.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-a410ff4d.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 mod"><!--[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="#">Module parse</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../../regex_syntax/index.html">regex_<wbr>syntax</a><span class="version">0.8.10</span></h2></div><div class="sidebar-elems"><section id="rustdoc-toc"><h2 class="location"><a href="#">Module parse</a></h2><h3><a href="#structs">Module Items</a></h3><ul class="block"><li><a href="#structs" title="Structs">Structs</a></li></ul></section><div id="rustdoc-modnav"><h2><a href="../index.html">In regex_<wbr>syntax::<wbr>ast</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">regex_syntax</a>::<wbr><a href="../index.html">ast</a></div><h1>Module <span>parse</span>&nbsp;<button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"><a class="src" href="../../../src/regex_syntax/ast/parse.rs.html#1-6377">Source</a> </span></div><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>This module provides a regular expression parser.</p>
</div></details><h2 id="structs" class="section-header">Structs<a href="#structs" class="anchor">§</a></h2><dl class="item-table"><dt><a class="struct" href="struct.Parser.html" title="struct regex_syntax::ast::parse::Parser">Parser</a></dt><dd>A regular expression parser.</dd><dt><a class="struct" href="struct.ParserBuilder.html" title="struct regex_syntax::ast::parse::ParserBuilder">Parser<wbr>Builder</a></dt><dd>A builder for a regular expression parser.</dd></dl></section></div></main></body></html>

View File

@@ -0,0 +1 @@
window.SIDEBAR_ITEMS = {"struct":["Parser","ParserBuilder"]};

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,2 @@
<!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="This module provides a regular expression printer for `Ast`."><title>regex_syntax::ast::print - 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-ca0dd0c4.css"><meta name="rustdoc-vars" data-root-path="../../../" data-static-root-path="../../../static.files/" data-current-crate="regex_syntax" data-themes="" data-resource-suffix="" data-rustdoc-version="1.93.1 (01f6ddf75 2026-02-11) (Arch Linux rust 1:1.93.1-1)" data-channel="1.93.1" data-search-js="search-9e2438ea.js" data-stringdex-js="stringdex-a3946164.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-a410ff4d.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 mod"><!--[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="#">Module print</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../../regex_syntax/index.html">regex_<wbr>syntax</a><span class="version">0.8.10</span></h2></div><div class="sidebar-elems"><section id="rustdoc-toc"><h2 class="location"><a href="#">Module print</a></h2><h3><a href="#structs">Module Items</a></h3><ul class="block"><li><a href="#structs" title="Structs">Structs</a></li></ul></section><div id="rustdoc-modnav"><h2><a href="../index.html">In regex_<wbr>syntax::<wbr>ast</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">regex_syntax</a>::<wbr><a href="../index.html">ast</a></div><h1>Module <span>print</span>&nbsp;<button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"><a class="src" href="../../../src/regex_syntax/ast/print.rs.html#1-577">Source</a> </span></div><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>This module provides a regular expression printer for <code>Ast</code>.</p>
</div></details><h2 id="structs" class="section-header">Structs<a href="#structs" class="anchor">§</a></h2><dl class="item-table"><dt><a class="struct" href="struct.Printer.html" title="struct regex_syntax::ast::print::Printer">Printer</a></dt><dd>A printer for a regular expression abstract syntax tree.</dd></dl></section></div></main></body></html>

View File

@@ -0,0 +1 @@
window.SIDEBAR_ITEMS = {"struct":["Printer"]};

View File

@@ -0,0 +1,23 @@
<!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="A printer for a regular expression abstract syntax tree."><title>Printer in regex_syntax::ast::print - 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-ca0dd0c4.css"><meta name="rustdoc-vars" data-root-path="../../../" data-static-root-path="../../../static.files/" data-current-crate="regex_syntax" data-themes="" data-resource-suffix="" data-rustdoc-version="1.93.1 (01f6ddf75 2026-02-11) (Arch Linux rust 1:1.93.1-1)" data-channel="1.93.1" data-search-js="search-9e2438ea.js" data-stringdex-js="stringdex-a3946164.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-a410ff4d.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 struct"><!--[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="#">Printer</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../../regex_syntax/index.html">regex_<wbr>syntax</a><span class="version">0.8.10</span></h2></div><div class="sidebar-elems"><section id="rustdoc-toc"><h2 class="location"><a href="#">Printer</a></h2><h3><a href="#implementations">Methods</a></h3><ul class="block method"><li><a href="#method.new" title="new">new</a></li><li><a href="#method.print" title="print">print</a></li></ul><h3><a href="#trait-implementations">Trait Implementations</a></h3><ul class="block trait-implementation"><li><a href="#impl-Debug-for-Printer" title="Debug">Debug</a></li></ul><h3><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul class="block synthetic-implementation"><li><a href="#impl-Freeze-for-Printer" title="Freeze">Freeze</a></li><li><a href="#impl-RefUnwindSafe-for-Printer" title="RefUnwindSafe">RefUnwindSafe</a></li><li><a href="#impl-Send-for-Printer" title="Send">Send</a></li><li><a href="#impl-Sync-for-Printer" title="Sync">Sync</a></li><li><a href="#impl-Unpin-for-Printer" title="Unpin">Unpin</a></li><li><a href="#impl-UnwindSafe-for-Printer" title="UnwindSafe">UnwindSafe</a></li></ul><h3><a href="#blanket-implementations">Blanket Implementations</a></h3><ul class="block blanket-implementation"><li><a href="#impl-Any-for-T" title="Any">Any</a></li><li><a href="#impl-Borrow%3CT%3E-for-T" title="Borrow&#60;T&#62;">Borrow&#60;T&#62;</a></li><li><a href="#impl-BorrowMut%3CT%3E-for-T" title="BorrowMut&#60;T&#62;">BorrowMut&#60;T&#62;</a></li><li><a href="#impl-From%3CT%3E-for-T" title="From&#60;T&#62;">From&#60;T&#62;</a></li><li><a href="#impl-Into%3CU%3E-for-T" title="Into&#60;U&#62;">Into&#60;U&#62;</a></li><li><a href="#impl-TryFrom%3CU%3E-for-T" title="TryFrom&#60;U&#62;">TryFrom&#60;U&#62;</a></li><li><a href="#impl-TryInto%3CU%3E-for-T" title="TryInto&#60;U&#62;">TryInto&#60;U&#62;</a></li></ul></section><div id="rustdoc-modnav"><h2><a href="index.html">In regex_<wbr>syntax::<wbr>ast::<wbr>print</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">regex_syntax</a>::<wbr><a href="../index.html">ast</a>::<wbr><a href="index.html">print</a></div><h1>Struct <span class="struct">Printer</span>&nbsp;<button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"><a class="src" href="../../../src/regex_syntax/ast/print.rs.html#48-50">Source</a> </span></div><pre class="rust item-decl"><code>pub struct Printer { <span class="comment">/* private fields */</span> }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>A printer for a regular expression abstract syntax tree.</p>
<p>A printer converts an abstract syntax tree (AST) to a regular expression
pattern string. This particular printer uses constant stack space and heap
space proportional to the size of the AST.</p>
<p>This printer will not necessarily preserve the original formatting of the
regular expression pattern string. For example, all whitespace and comments
are ignored.</p>
</div></details><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-Printer" class="impl"><a class="src rightside" href="../../../src/regex_syntax/ast/print.rs.html#52-65">Source</a><a href="#impl-Printer" class="anchor">§</a><h3 class="code-header">impl <a class="struct" href="struct.Printer.html" title="struct regex_syntax::ast::print::Printer">Printer</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.new" class="method"><a class="src rightside" href="../../../src/regex_syntax/ast/print.rs.html#54-56">Source</a><h4 class="code-header">pub fn <a href="#method.new" class="fn">new</a>() -&gt; <a class="struct" href="struct.Printer.html" title="struct regex_syntax::ast::print::Printer">Printer</a></h4></section></summary><div class="docblock"><p>Create a new printer.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.print" class="method"><a class="src rightside" href="../../../src/regex_syntax/ast/print.rs.html#62-64">Source</a><h4 class="code-header">pub fn <a href="#method.print" class="fn">print</a>&lt;W: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/fmt/trait.Write.html" title="trait core::fmt::Write">Write</a>&gt;(&amp;mut self, ast: &amp;<a class="enum" href="../enum.Ast.html" title="enum regex_syntax::ast::Ast">Ast</a>, wtr: W) -&gt; <a class="type" href="https://doc.rust-lang.org/1.93.1/core/fmt/type.Result.html" title="type core::fmt::Result">Result</a></h4></section></summary><div class="docblock"><p>Print the given <code>Ast</code> to the given writer. The writer must implement
<code>fmt::Write</code>. Typical implementations of <code>fmt::Write</code> that can be used
here are a <code>fmt::Formatter</code> (which is available in <code>fmt::Display</code>
implementations) or a <code>&amp;mut String</code>.</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-Debug-for-Printer" class="impl"><a class="src rightside" href="../../../src/regex_syntax/ast/print.rs.html#47">Source</a><a href="#impl-Debug-for-Printer" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/fmt/trait.Debug.html" title="trait core::fmt::Debug">Debug</a> for <a class="struct" href="struct.Printer.html" title="struct regex_syntax::ast::print::Printer">Printer</a></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.fmt" class="method trait-impl"><a class="src rightside" href="../../../src/regex_syntax/ast/print.rs.html#47">Source</a><a href="#method.fmt" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.93.1/core/fmt/trait.Debug.html#tymethod.fmt" class="fn">fmt</a>(&amp;self, f: &amp;mut <a class="struct" href="https://doc.rust-lang.org/1.93.1/core/fmt/struct.Formatter.html" title="struct core::fmt::Formatter">Formatter</a>&lt;'_&gt;) -&gt; <a class="type" href="https://doc.rust-lang.org/1.93.1/core/fmt/type.Result.html" title="type core::fmt::Result">Result</a></h4></section></summary><div class='docblock'>Formats the value using the given formatter. <a href="https://doc.rust-lang.org/1.93.1/core/fmt/trait.Debug.html#tymethod.fmt">Read more</a></div></details></div></details></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-Printer" class="impl"><a href="#impl-Freeze-for-Printer" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Freeze.html" title="trait core::marker::Freeze">Freeze</a> for <a class="struct" href="struct.Printer.html" title="struct regex_syntax::ast::print::Printer">Printer</a></h3></section><section id="impl-RefUnwindSafe-for-Printer" class="impl"><a href="#impl-RefUnwindSafe-for-Printer" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="struct" href="struct.Printer.html" title="struct regex_syntax::ast::print::Printer">Printer</a></h3></section><section id="impl-Send-for-Printer" class="impl"><a href="#impl-Send-for-Printer" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="struct.Printer.html" title="struct regex_syntax::ast::print::Printer">Printer</a></h3></section><section id="impl-Sync-for-Printer" class="impl"><a href="#impl-Sync-for-Printer" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="struct.Printer.html" title="struct regex_syntax::ast::print::Printer">Printer</a></h3></section><section id="impl-Unpin-for-Printer" class="impl"><a href="#impl-Unpin-for-Printer" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="struct.Printer.html" title="struct regex_syntax::ast::print::Printer">Printer</a></h3></section><section id="impl-UnwindSafe-for-Printer" class="impl"><a href="#impl-UnwindSafe-for-Printer" class="anchor">§</a><h3 class="code-header">impl <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="struct" href="struct.Printer.html" title="struct regex_syntax::ast::print::Printer">Printer</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/1.93.1/src/core/any.rs.html#138">Source</a><a href="#impl-Any-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.93.1/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/1.93.1/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/1.93.1/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/1.93.1/core/any/trait.Any.html#tymethod.type_id" class="fn">type_id</a>(&amp;self) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.93.1/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/1.93.1/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/1.93.1/src/core/borrow.rs.html#212">Source</a><a href="#impl-Borrow%3CT%3E-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a>&lt;T&gt; for T<div class="where">where
T: ?<a class="trait" href="https://doc.rust-lang.org/1.93.1/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/1.93.1/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/1.93.1/core/borrow/trait.Borrow.html#tymethod.borrow" class="fn">borrow</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&amp;T</a></h4></section></summary><div class='docblock'>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.93.1/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/1.93.1/src/core/borrow.rs.html#221">Source</a><a href="#impl-BorrowMut%3CT%3E-for-T" class="anchor">§</a><h3 class="code-header">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a>&lt;T&gt; for T<div class="where">where
T: ?<a class="trait" href="https://doc.rust-lang.org/1.93.1/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/1.93.1/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/1.93.1/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut" class="fn">borrow_mut</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&amp;mut T</a></h4></section></summary><div class='docblock'>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.93.1/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">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/1.93.1/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&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;T&gt; for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.93.1/src/core/convert/mod.rs.html#788">Source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.93.1/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(t: T) -&gt; 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-Into%3CU%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.93.1/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&lt;T, U&gt; <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;U&gt; for T<div class="where">where
U: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;T&gt;,</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/1.93.1/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/1.93.1/core/convert/trait.Into.html#tymethod.into" class="fn">into</a>(self) -&gt; 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/1.93.1/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;T&gt; for U</code> chooses to do.</p>
</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/1.93.1/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&lt;T, U&gt; <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;U&gt; for T<div class="where">where
U: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a>&lt;T&gt;,</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/1.93.1/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/1.93.1/core/convert/trait.TryFrom.html#associatedtype.Error" class="associatedtype">Error</a> = <a class="enum" href="https://doc.rust-lang.org/1.93.1/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/1.93.1/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/1.93.1/core/convert/trait.TryFrom.html#tymethod.try_from" class="fn">try_from</a>(value: U) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;T, &lt;T as <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;U&gt;&gt;::<a class="associatedtype" href="https://doc.rust-lang.org/1.93.1/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>&gt;</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/1.93.1/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&lt;T, U&gt; <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/convert/trait.TryInto.html" title="trait core::convert::TryInto">TryInto</a>&lt;U&gt; for T<div class="where">where
U: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;T&gt;,</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/1.93.1/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/1.93.1/core/convert/trait.TryInto.html#associatedtype.Error" class="associatedtype">Error</a> = &lt;U as <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;T&gt;&gt;::<a class="associatedtype" href="https://doc.rust-lang.org/1.93.1/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/1.93.1/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/1.93.1/core/convert/trait.TryInto.html#tymethod.try_into" class="fn">try_into</a>(self) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;U, &lt;U as <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a>&lt;T&gt;&gt;::<a class="associatedtype" href="https://doc.rust-lang.org/1.93.1/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>&gt;</h4></section></summary><div class='docblock'>Performs the conversion.</div></details></div></details></div></section></div></main></body></html>

View File

@@ -0,0 +1 @@
window.SIDEBAR_ITEMS = {"enum":["AssertionKind","Ast","ClassAsciiKind","ClassPerlKind","ClassSet","ClassSetBinaryOpKind","ClassSetItem","ClassUnicodeKind","ClassUnicodeOpKind","ErrorKind","Flag","FlagsItemKind","GroupKind","HexLiteralKind","LiteralKind","RepetitionKind","RepetitionRange","SpecialLiteralKind"],"fn":["visit"],"mod":["parse","print"],"struct":["Alternation","Assertion","CaptureName","ClassAscii","ClassBracketed","ClassPerl","ClassSetBinaryOp","ClassSetRange","ClassSetUnion","ClassUnicode","Comment","Concat","Error","Flags","FlagsItem","Group","Literal","Position","Repetition","RepetitionOp","SetFlags","Span","WithComments"],"trait":["Visitor"]};

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,85 @@
<!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="A trait for visiting an abstract syntax tree (AST) in depth first order."><title>Visitor in regex_syntax::ast - 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-ca0dd0c4.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="regex_syntax" data-themes="" data-resource-suffix="" data-rustdoc-version="1.93.1 (01f6ddf75 2026-02-11) (Arch Linux rust 1:1.93.1-1)" data-channel="1.93.1" data-search-js="search-9e2438ea.js" data-stringdex-js="stringdex-a3946164.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-a410ff4d.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 trait"><!--[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="#">Visitor</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../regex_syntax/index.html">regex_<wbr>syntax</a><span class="version">0.8.10</span></h2></div><div class="sidebar-elems"><section id="rustdoc-toc"><h2 class="location"><a href="#">Visitor</a></h2><h3><a href="#required-associated-types">Required Associated Types</a></h3><ul class="block"><li><a href="#associatedtype.Err" title="Err">Err</a></li><li><a href="#associatedtype.Output" title="Output">Output</a></li></ul><h3><a href="#required-methods">Required Methods</a></h3><ul class="block"><li><a href="#tymethod.finish" title="finish">finish</a></li></ul><h3><a href="#provided-methods">Provided Methods</a></h3><ul class="block"><li><a href="#method.start" title="start">start</a></li><li><a href="#method.visit_alternation_in" title="visit_alternation_in">visit_alternation_in</a></li><li><a href="#method.visit_class_set_binary_op_in" title="visit_class_set_binary_op_in">visit_class_set_binary_op_in</a></li><li><a href="#method.visit_class_set_binary_op_post" title="visit_class_set_binary_op_post">visit_class_set_binary_op_post</a></li><li><a href="#method.visit_class_set_binary_op_pre" title="visit_class_set_binary_op_pre">visit_class_set_binary_op_pre</a></li><li><a href="#method.visit_class_set_item_post" title="visit_class_set_item_post">visit_class_set_item_post</a></li><li><a href="#method.visit_class_set_item_pre" title="visit_class_set_item_pre">visit_class_set_item_pre</a></li><li><a href="#method.visit_concat_in" title="visit_concat_in">visit_concat_in</a></li><li><a href="#method.visit_post" title="visit_post">visit_post</a></li><li><a href="#method.visit_pre" title="visit_pre">visit_pre</a></li></ul><h3><a href="#implementors">Implementors</a></h3></section><div id="rustdoc-modnav"><h2><a href="index.html">In regex_<wbr>syntax::<wbr>ast</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">regex_syntax</a>::<wbr><a href="index.html">ast</a></div><h1>Trait <span class="trait">Visitor</span>&nbsp;<button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"><a class="src" href="../../src/regex_syntax/ast/visitor.rs.html#20-102">Source</a> </span></div><pre class="rust item-decl"><code>pub trait Visitor {
type <a href="#associatedtype.Output" class="associatedtype">Output</a>;
type <a href="#associatedtype.Err" class="associatedtype">Err</a>;
// Required method
fn <a href="#tymethod.finish" class="fn">finish</a>(self) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Output" title="type regex_syntax::ast::Visitor::Output">Output</a>, Self::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Err" title="type regex_syntax::ast::Visitor::Err">Err</a>&gt;;
// Provided methods
fn <a href="#method.start" class="fn">start</a>(&amp;mut self) { ... }
<span class="item-spacer"></span> fn <a href="#method.visit_pre" class="fn">visit_pre</a>(&amp;mut self, _ast: &amp;<a class="enum" href="enum.Ast.html" title="enum regex_syntax::ast::Ast">Ast</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>, Self::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Err" title="type regex_syntax::ast::Visitor::Err">Err</a>&gt; { ... }
<span class="item-spacer"></span> fn <a href="#method.visit_post" class="fn">visit_post</a>(&amp;mut self, _ast: &amp;<a class="enum" href="enum.Ast.html" title="enum regex_syntax::ast::Ast">Ast</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>, Self::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Err" title="type regex_syntax::ast::Visitor::Err">Err</a>&gt; { ... }
<span class="item-spacer"></span> fn <a href="#method.visit_alternation_in" class="fn">visit_alternation_in</a>(&amp;mut self) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>, Self::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Err" title="type regex_syntax::ast::Visitor::Err">Err</a>&gt; { ... }
<span class="item-spacer"></span> fn <a href="#method.visit_concat_in" class="fn">visit_concat_in</a>(&amp;mut self) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>, Self::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Err" title="type regex_syntax::ast::Visitor::Err">Err</a>&gt; { ... }
<span class="item-spacer"></span> fn <a href="#method.visit_class_set_item_pre" class="fn">visit_class_set_item_pre</a>(
&amp;mut self,
_ast: &amp;<a class="enum" href="enum.ClassSetItem.html" title="enum regex_syntax::ast::ClassSetItem">ClassSetItem</a>,
) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>, Self::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Err" title="type regex_syntax::ast::Visitor::Err">Err</a>&gt; { ... }
<span class="item-spacer"></span> fn <a href="#method.visit_class_set_item_post" class="fn">visit_class_set_item_post</a>(
&amp;mut self,
_ast: &amp;<a class="enum" href="enum.ClassSetItem.html" title="enum regex_syntax::ast::ClassSetItem">ClassSetItem</a>,
) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>, Self::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Err" title="type regex_syntax::ast::Visitor::Err">Err</a>&gt; { ... }
<span class="item-spacer"></span> fn <a href="#method.visit_class_set_binary_op_pre" class="fn">visit_class_set_binary_op_pre</a>(
&amp;mut self,
_ast: &amp;<a class="struct" href="struct.ClassSetBinaryOp.html" title="struct regex_syntax::ast::ClassSetBinaryOp">ClassSetBinaryOp</a>,
) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>, Self::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Err" title="type regex_syntax::ast::Visitor::Err">Err</a>&gt; { ... }
<span class="item-spacer"></span> fn <a href="#method.visit_class_set_binary_op_post" class="fn">visit_class_set_binary_op_post</a>(
&amp;mut self,
_ast: &amp;<a class="struct" href="struct.ClassSetBinaryOp.html" title="struct regex_syntax::ast::ClassSetBinaryOp">ClassSetBinaryOp</a>,
) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>, Self::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Err" title="type regex_syntax::ast::Visitor::Err">Err</a>&gt; { ... }
<span class="item-spacer"></span> fn <a href="#method.visit_class_set_binary_op_in" class="fn">visit_class_set_binary_op_in</a>(
&amp;mut self,
_ast: &amp;<a class="struct" href="struct.ClassSetBinaryOp.html" title="struct regex_syntax::ast::ClassSetBinaryOp">ClassSetBinaryOp</a>,
) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>, Self::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Err" title="type regex_syntax::ast::Visitor::Err">Err</a>&gt; { ... }
}</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>A trait for visiting an abstract syntax tree (AST) in depth first order.</p>
<p>The principle aim of this trait is to enable callers to perform case
analysis on an abstract syntax tree without necessarily using recursion.
In particular, this permits callers to do case analysis with constant stack
usage, which can be important since the size of an abstract syntax tree
may be proportional to end user input.</p>
<p>Typical usage of this trait involves providing an implementation and then
running it using the <a href="fn.visit.html" title="fn regex_syntax::ast::visit"><code>visit</code></a> function.</p>
<p>Note that the abstract syntax tree for a regular expression is quite
complex. Unless you specifically need it, you might be able to use the much
simpler <a href="../hir/struct.Hir.html" title="struct regex_syntax::hir::Hir">high-level intermediate representation</a> and its
<a href="../hir/trait.Visitor.html" title="trait regex_syntax::hir::Visitor">corresponding <code>Visitor</code> trait</a> instead.</p>
</div></details><h2 id="required-associated-types" class="section-header">Required Associated Types<a href="#required-associated-types" class="anchor">§</a></h2><div class="methods"><details class="toggle" open><summary><section id="associatedtype.Output" class="method"><a class="src rightside" href="../../src/regex_syntax/ast/visitor.rs.html#22">Source</a><h4 class="code-header">type <a href="#associatedtype.Output" class="associatedtype">Output</a></h4></section></summary><div class="docblock"><p>The result of visiting an AST.</p>
</div></details><details class="toggle" open><summary><section id="associatedtype.Err" class="method"><a class="src rightside" href="../../src/regex_syntax/ast/visitor.rs.html#24">Source</a><h4 class="code-header">type <a href="#associatedtype.Err" class="associatedtype">Err</a></h4></section></summary><div class="docblock"><p>An error that visiting an AST might return.</p>
</div></details></div><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.finish" class="method"><a class="src rightside" href="../../src/regex_syntax/ast/visitor.rs.html#28">Source</a><h4 class="code-header">fn <a href="#tymethod.finish" class="fn">finish</a>(self) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Output" title="type regex_syntax::ast::Visitor::Output">Output</a>, Self::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Err" title="type regex_syntax::ast::Visitor::Err">Err</a>&gt;</h4></section></summary><div class="docblock"><p>All implementors of <code>Visitor</code> must provide a <code>finish</code> method, which
yields the result of visiting the AST or an error.</p>
</div></details></div><h2 id="provided-methods" class="section-header">Provided Methods<a href="#provided-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="method.start" class="method"><a class="src rightside" href="../../src/regex_syntax/ast/visitor.rs.html#31">Source</a><h4 class="code-header">fn <a href="#method.start" class="fn">start</a>(&amp;mut self)</h4></section></summary><div class="docblock"><p>This method is called before beginning traversal of the AST.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.visit_pre" class="method"><a class="src rightside" href="../../src/regex_syntax/ast/visitor.rs.html#35-37">Source</a><h4 class="code-header">fn <a href="#method.visit_pre" class="fn">visit_pre</a>(&amp;mut self, _ast: &amp;<a class="enum" href="enum.Ast.html" title="enum regex_syntax::ast::Ast">Ast</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>, Self::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Err" title="type regex_syntax::ast::Visitor::Err">Err</a>&gt;</h4></section></summary><div class="docblock"><p>This method is called on an <code>Ast</code> before descending into child <code>Ast</code>
nodes.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.visit_post" class="method"><a class="src rightside" href="../../src/regex_syntax/ast/visitor.rs.html#41-43">Source</a><h4 class="code-header">fn <a href="#method.visit_post" class="fn">visit_post</a>(&amp;mut self, _ast: &amp;<a class="enum" href="enum.Ast.html" title="enum regex_syntax::ast::Ast">Ast</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>, Self::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Err" title="type regex_syntax::ast::Visitor::Err">Err</a>&gt;</h4></section></summary><div class="docblock"><p>This method is called on an <code>Ast</code> after descending all of its child
<code>Ast</code> nodes.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.visit_alternation_in" class="method"><a class="src rightside" href="../../src/regex_syntax/ast/visitor.rs.html#47-49">Source</a><h4 class="code-header">fn <a href="#method.visit_alternation_in" class="fn">visit_alternation_in</a>(&amp;mut self) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>, Self::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Err" title="type regex_syntax::ast::Visitor::Err">Err</a>&gt;</h4></section></summary><div class="docblock"><p>This method is called between child nodes of an
<a href="struct.Alternation.html" title="struct regex_syntax::ast::Alternation"><code>Alternation</code></a>.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.visit_concat_in" class="method"><a class="src rightside" href="../../src/regex_syntax/ast/visitor.rs.html#52-54">Source</a><h4 class="code-header">fn <a href="#method.visit_concat_in" class="fn">visit_concat_in</a>(&amp;mut self) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>, Self::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Err" title="type regex_syntax::ast::Visitor::Err">Err</a>&gt;</h4></section></summary><div class="docblock"><p>This method is called between child nodes of a concatenation.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.visit_class_set_item_pre" class="method"><a class="src rightside" href="../../src/regex_syntax/ast/visitor.rs.html#58-63">Source</a><h4 class="code-header">fn <a href="#method.visit_class_set_item_pre" class="fn">visit_class_set_item_pre</a>(
&amp;mut self,
_ast: &amp;<a class="enum" href="enum.ClassSetItem.html" title="enum regex_syntax::ast::ClassSetItem">ClassSetItem</a>,
) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>, Self::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Err" title="type regex_syntax::ast::Visitor::Err">Err</a>&gt;</h4></section></summary><div class="docblock"><p>This method is called on every <a href="enum.ClassSetItem.html" title="enum regex_syntax::ast::ClassSetItem"><code>ClassSetItem</code></a>
before descending into child nodes.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.visit_class_set_item_post" class="method"><a class="src rightside" href="../../src/regex_syntax/ast/visitor.rs.html#67-72">Source</a><h4 class="code-header">fn <a href="#method.visit_class_set_item_post" class="fn">visit_class_set_item_post</a>(
&amp;mut self,
_ast: &amp;<a class="enum" href="enum.ClassSetItem.html" title="enum regex_syntax::ast::ClassSetItem">ClassSetItem</a>,
) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>, Self::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Err" title="type regex_syntax::ast::Visitor::Err">Err</a>&gt;</h4></section></summary><div class="docblock"><p>This method is called on every <a href="enum.ClassSetItem.html" title="enum regex_syntax::ast::ClassSetItem"><code>ClassSetItem</code></a>
after descending into child nodes.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.visit_class_set_binary_op_pre" class="method"><a class="src rightside" href="../../src/regex_syntax/ast/visitor.rs.html#77-82">Source</a><h4 class="code-header">fn <a href="#method.visit_class_set_binary_op_pre" class="fn">visit_class_set_binary_op_pre</a>(
&amp;mut self,
_ast: &amp;<a class="struct" href="struct.ClassSetBinaryOp.html" title="struct regex_syntax::ast::ClassSetBinaryOp">ClassSetBinaryOp</a>,
) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>, Self::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Err" title="type regex_syntax::ast::Visitor::Err">Err</a>&gt;</h4></section></summary><div class="docblock"><p>This method is called on every
<a href="struct.ClassSetBinaryOp.html" title="struct regex_syntax::ast::ClassSetBinaryOp"><code>ClassSetBinaryOp</code></a> before descending into
child nodes.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.visit_class_set_binary_op_post" class="method"><a class="src rightside" href="../../src/regex_syntax/ast/visitor.rs.html#87-92">Source</a><h4 class="code-header">fn <a href="#method.visit_class_set_binary_op_post" class="fn">visit_class_set_binary_op_post</a>(
&amp;mut self,
_ast: &amp;<a class="struct" href="struct.ClassSetBinaryOp.html" title="struct regex_syntax::ast::ClassSetBinaryOp">ClassSetBinaryOp</a>,
) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>, Self::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Err" title="type regex_syntax::ast::Visitor::Err">Err</a>&gt;</h4></section></summary><div class="docblock"><p>This method is called on every
<a href="struct.ClassSetBinaryOp.html" title="struct regex_syntax::ast::ClassSetBinaryOp"><code>ClassSetBinaryOp</code></a> after descending into child
nodes.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.visit_class_set_binary_op_in" class="method"><a class="src rightside" href="../../src/regex_syntax/ast/visitor.rs.html#96-101">Source</a><h4 class="code-header">fn <a href="#method.visit_class_set_binary_op_in" class="fn">visit_class_set_binary_op_in</a>(
&amp;mut self,
_ast: &amp;<a class="struct" href="struct.ClassSetBinaryOp.html" title="struct regex_syntax::ast::ClassSetBinaryOp">ClassSetBinaryOp</a>,
) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>, Self::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Err" title="type regex_syntax::ast::Visitor::Err">Err</a>&gt;</h4></section></summary><div class="docblock"><p>This method is called between the left hand and right hand child nodes
of a <a href="struct.ClassSetBinaryOp.html" title="struct regex_syntax::ast::ClassSetBinaryOp"><code>ClassSetBinaryOp</code></a>.</p>
</div></details></div><h2 id="implementors" class="section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"></div><script src="../../trait.impl/regex_syntax/ast/visitor/trait.Visitor.js" async></script></section></div></main></body></html>

View File

@@ -0,0 +1,11 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="refresh" content="0;URL=../../../regex_syntax/ast/fn.visit.html">
<title>Redirection</title>
</head>
<body>
<p>Redirecting to <a href="../../../regex_syntax/ast/fn.visit.html">../../../regex_syntax/ast/fn.visit.html</a>...</p>
<script>location.replace("../../../regex_syntax/ast/fn.visit.html" + location.search + location.hash);</script>
</body>
</html>

View File

@@ -0,0 +1,11 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="refresh" content="0;URL=../../../regex_syntax/ast/trait.Visitor.html">
<title>Redirection</title>
</head>
<body>
<p>Redirecting to <a href="../../../regex_syntax/ast/trait.Visitor.html">../../../regex_syntax/ast/trait.Visitor.html</a>...</p>
<script>location.replace("../../../regex_syntax/ast/trait.Visitor.html" + location.search + location.hash);</script>
</body>
</html>

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,11 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="refresh" content="0;URL=../../regex_syntax/enum.Error.html">
<title>Redirection</title>
</head>
<body>
<p>Redirecting to <a href="../../regex_syntax/enum.Error.html">../../regex_syntax/enum.Error.html</a>...</p>
<script>location.replace("../../regex_syntax/enum.Error.html" + location.search + location.hash);</script>
</body>
</html>

View File

@@ -0,0 +1,4 @@
<!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="Escapes all regular expression meta characters in `text`."><title>escape in regex_syntax - 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-ca0dd0c4.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="regex_syntax" data-themes="" data-resource-suffix="" data-rustdoc-version="1.93.1 (01f6ddf75 2026-02-11) (Arch Linux rust 1:1.93.1-1)" data-channel="1.93.1" data-search-js="search-9e2438ea.js" data-stringdex-js="stringdex-a3946164.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-a410ff4d.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 fn"><!--[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="#">escape</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../regex_syntax/index.html">regex_<wbr>syntax</a><span class="version">0.8.10</span></h2></div><div class="sidebar-elems"><div id="rustdoc-modnav"></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">regex_syntax</a></div><h1>Function <span class="fn">escape</span>&nbsp;<button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"><a class="src" href="../src/regex_syntax/lib.rs.html#203-207">Source</a> </span></div><pre class="rust item-decl"><code>pub fn escape(text: &amp;<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.str.html">str</a>) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/string/struct.String.html" title="struct alloc::string::String">String</a></code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Escapes all regular expression meta characters in <code>text</code>.</p>
<p>The string returned may be safely used as a literal in a regular
expression.</p>
</div></details></section></div></main></body></html>

View File

@@ -0,0 +1,4 @@
<!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="Escapes all meta characters in `text` and writes the result into `buf`."><title>escape_into in regex_syntax - 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-ca0dd0c4.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="regex_syntax" data-themes="" data-resource-suffix="" data-rustdoc-version="1.93.1 (01f6ddf75 2026-02-11) (Arch Linux rust 1:1.93.1-1)" data-channel="1.93.1" data-search-js="search-9e2438ea.js" data-stringdex-js="stringdex-a3946164.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-a410ff4d.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 fn"><!--[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="#">escape_into</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../regex_syntax/index.html">regex_<wbr>syntax</a><span class="version">0.8.10</span></h2></div><div class="sidebar-elems"><div id="rustdoc-modnav"></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">regex_syntax</a></div><h1>Function <span class="fn">escape_<wbr>into</span>&nbsp;<button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"><a class="src" href="../src/regex_syntax/lib.rs.html#213-221">Source</a> </span></div><pre class="rust item-decl"><code>pub fn escape_into(text: &amp;<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.str.html">str</a>, buf: &amp;mut <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>)</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Escapes all meta characters in <code>text</code> and writes the result into <code>buf</code>.</p>
<p>This will append escape characters into the given buffer. The characters
that are appended are safe to use as a literal in a regular expression.</p>
</div></details></section></div></main></body></html>

View File

@@ -0,0 +1,28 @@
<!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="Returns true if the given character can be escaped in a regex."><title>is_escapeable_character in regex_syntax - 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-ca0dd0c4.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="regex_syntax" data-themes="" data-resource-suffix="" data-rustdoc-version="1.93.1 (01f6ddf75 2026-02-11) (Arch Linux rust 1:1.93.1-1)" data-channel="1.93.1" data-search-js="search-9e2438ea.js" data-stringdex-js="stringdex-a3946164.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-a410ff4d.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 fn"><!--[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="#">is_escapeable_character</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../regex_syntax/index.html">regex_<wbr>syntax</a><span class="version">0.8.10</span></h2></div><div class="sidebar-elems"><section id="rustdoc-toc"><h2 class="location"><a href="#">is_<wbr>escapeable_<wbr>character</a></h2><h3><a href="#">Sections</a></h3><ul class="block top-toc"><li><a href="#example" title="Example">Example</a></li></ul></section><div id="rustdoc-modnav"><h2 class="in-crate"><a href="index.html">In crate regex_<wbr>syntax</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">regex_syntax</a></div><h1>Function <span class="fn">is_<wbr>escapeable_<wbr>character</span>&nbsp;<button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"><a class="src" href="../src/regex_syntax/lib.rs.html#305-333">Source</a> </span></div><pre class="rust item-decl"><code>pub fn is_escapeable_character(c: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.char.html">char</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a></code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Returns true if the given character can be escaped in a regex.</p>
<p>This returns true in all cases that <code>is_meta_character</code> returns true, but
also returns true in some cases where <code>is_meta_character</code> returns false.
For example, <code>%</code> is not a meta character, but it is escapable. That is,
<code>%</code> and <code>\%</code> both match a literal <code>%</code> in all contexts.</p>
<p>The purpose of this routine is to provide knowledge about what characters
may be escaped. Namely, most regex engines permit “superfluous” escapes
where characters without any special significance may be escaped even
though there is no actual <em>need</em> to do so.</p>
<p>This will return false for some characters. For example, <code>e</code> is not
escapable. Therefore, <code>\e</code> will either result in a parse error (which is
true today), or it could backwards compatibly evolve into a new construct
with its own meaning. Indeed, that is the purpose of banning <em>some</em>
superfluous escapes: it provides a way to evolve the syntax in a compatible
manner.</p>
<h2 id="example"><a class="doc-anchor" href="#example">§</a>Example</h2>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>regex_syntax::is_escapeable_character;
<span class="macro">assert!</span>(is_escapeable_character(<span class="string">'?'</span>));
<span class="macro">assert!</span>(is_escapeable_character(<span class="string">'-'</span>));
<span class="macro">assert!</span>(is_escapeable_character(<span class="string">'&amp;'</span>));
<span class="macro">assert!</span>(is_escapeable_character(<span class="string">'#'</span>));
<span class="macro">assert!</span>(is_escapeable_character(<span class="string">'%'</span>));
<span class="macro">assert!</span>(is_escapeable_character(<span class="string">'/'</span>));
<span class="macro">assert!</span>(is_escapeable_character(<span class="string">'!'</span>));
<span class="macro">assert!</span>(is_escapeable_character(<span class="string">'"'</span>));
<span class="macro">assert!</span>(!is_escapeable_character(<span class="string">'e'</span>));</code></pre></div></div></details></section></div></main></body></html>

View File

@@ -0,0 +1,32 @@
<!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="Returns true if the given character has significance in a regex."><title>is_meta_character in regex_syntax - 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-ca0dd0c4.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="regex_syntax" data-themes="" data-resource-suffix="" data-rustdoc-version="1.93.1 (01f6ddf75 2026-02-11) (Arch Linux rust 1:1.93.1-1)" data-channel="1.93.1" data-search-js="search-9e2438ea.js" data-stringdex-js="stringdex-a3946164.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-a410ff4d.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 fn"><!--[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="#">is_meta_character</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../regex_syntax/index.html">regex_<wbr>syntax</a><span class="version">0.8.10</span></h2></div><div class="sidebar-elems"><section id="rustdoc-toc"><h2 class="location"><a href="#">is_<wbr>meta_<wbr>character</a></h2><h3><a href="#">Sections</a></h3><ul class="block top-toc"><li><a href="#example" title="Example">Example</a></li></ul></section><div id="rustdoc-modnav"><h2 class="in-crate"><a href="index.html">In crate regex_<wbr>syntax</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">regex_syntax</a></div><h1>Function <span class="fn">is_<wbr>meta_<wbr>character</span>&nbsp;<button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"><a class="src" href="../src/regex_syntax/lib.rs.html#262-268">Source</a> </span></div><pre class="rust item-decl"><code>pub fn is_meta_character(c: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.char.html">char</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a></code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Returns true if the given character has significance in a regex.</p>
<p>Generally speaking, these are the only characters which <em>must</em> be escaped
in order to match their literal meaning. For example, to match a literal
<code>|</code>, one could write <code>\|</code>. Sometimes escaping isnt always necessary. For
example, <code>-</code> is treated as a meta character because of its significance
for writing ranges inside of character classes, but the regex <code>-</code> will
match a literal <code>-</code> because <code>-</code> has no special meaning outside of character
classes.</p>
<p>In order to determine whether a character may be escaped at all, the
<a href="fn.is_escapeable_character.html" title="fn regex_syntax::is_escapeable_character"><code>is_escapeable_character</code></a> routine should be used. The difference between
<code>is_meta_character</code> and <code>is_escapeable_character</code> is that the latter will
return true for some characters that are <em>not</em> meta characters. For
example, <code>%</code> and <code>\%</code> both match a literal <code>%</code> in all contexts. In other
words, <code>is_escapeable_character</code> includes “superfluous” escapes.</p>
<p>Note that the set of characters for which this function returns <code>true</code> or
<code>false</code> is fixed and wont change in a semver compatible release. (In this
case, “semver compatible release” actually refers to the <code>regex</code> crate
itself, since reducing or expanding the set of meta characters would be a
breaking change for not just <code>regex-syntax</code> but also <code>regex</code> itself.)</p>
<h2 id="example"><a class="doc-anchor" href="#example">§</a>Example</h2>
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>regex_syntax::is_meta_character;
<span class="macro">assert!</span>(is_meta_character(<span class="string">'?'</span>));
<span class="macro">assert!</span>(is_meta_character(<span class="string">'-'</span>));
<span class="macro">assert!</span>(is_meta_character(<span class="string">'&amp;'</span>));
<span class="macro">assert!</span>(is_meta_character(<span class="string">'#'</span>));
<span class="macro">assert!</span>(!is_meta_character(<span class="string">'%'</span>));
<span class="macro">assert!</span>(!is_meta_character(<span class="string">'/'</span>));
<span class="macro">assert!</span>(!is_meta_character(<span class="string">'!'</span>));
<span class="macro">assert!</span>(!is_meta_character(<span class="string">'"'</span>));
<span class="macro">assert!</span>(!is_meta_character(<span class="string">'e'</span>));</code></pre></div></div></details></section></div></main></body></html>

View File

@@ -0,0 +1,4 @@
<!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="Returns true if and only if the given character is an ASCII word character."><title>is_word_byte in regex_syntax - 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-ca0dd0c4.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="regex_syntax" data-themes="" data-resource-suffix="" data-rustdoc-version="1.93.1 (01f6ddf75 2026-02-11) (Arch Linux rust 1:1.93.1-1)" data-channel="1.93.1" data-search-js="search-9e2438ea.js" data-stringdex-js="stringdex-a3946164.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-a410ff4d.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 fn"><!--[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="#">is_word_byte</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../regex_syntax/index.html">regex_<wbr>syntax</a><span class="version">0.8.10</span></h2></div><div class="sidebar-elems"><div id="rustdoc-modnav"></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">regex_syntax</a></div><h1>Function <span class="fn">is_<wbr>word_<wbr>byte</span>&nbsp;<button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"><a class="src" href="../src/regex_syntax/lib.rs.html#378-383">Source</a> </span></div><pre class="rust item-decl"><code>pub fn is_word_byte(c: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.u8.html">u8</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a></code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Returns true if and only if the given character is an ASCII word character.</p>
<p>An ASCII word character is defined by the following character class:
<code>[_0-9a-zA-Z]</code>.</p>
</div></details></section></div></main></body></html>

View File

@@ -0,0 +1,13 @@
<!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="Returns true if and only if the given character is a Unicode word character."><title>is_word_character in regex_syntax - 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-ca0dd0c4.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="regex_syntax" data-themes="" data-resource-suffix="" data-rustdoc-version="1.93.1 (01f6ddf75 2026-02-11) (Arch Linux rust 1:1.93.1-1)" data-channel="1.93.1" data-search-js="search-9e2438ea.js" data-stringdex-js="stringdex-a3946164.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-a410ff4d.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 fn"><!--[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="#">is_word_character</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../regex_syntax/index.html">regex_<wbr>syntax</a><span class="version">0.8.10</span></h2></div><div class="sidebar-elems"><section id="rustdoc-toc"><h2 class="location"><a href="#">is_<wbr>word_<wbr>character</a></h2><h3><a href="#">Sections</a></h3><ul class="block top-toc"><li><a href="#panics" title="Panics">Panics</a></li></ul></section><div id="rustdoc-modnav"><h2 class="in-crate"><a href="index.html">In crate regex_<wbr>syntax</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">regex_syntax</a></div><h1>Function <span class="fn">is_<wbr>word_<wbr>character</span>&nbsp;<button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"><a class="src" href="../src/regex_syntax/lib.rs.html#350-352">Source</a> </span></div><pre class="rust item-decl"><code>pub fn is_word_character(c: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.char.html">char</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a></code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Returns true if and only if the given character is a Unicode word
character.</p>
<p>A Unicode word character is defined by
<a href="https://unicode.org/reports/tr18/#Compatibility_Properties">UTS#18 Annex C</a>.
In particular, a character
is considered a word character if it is in either of the <code>Alphabetic</code> or
<code>Join_Control</code> properties, or is in one of the <code>Decimal_Number</code>, <code>Mark</code>
or <code>Connector_Punctuation</code> general categories.</p>
<h2 id="panics"><a class="doc-anchor" href="#panics">§</a>Panics</h2>
<p>If the <code>unicode-perl</code> feature is not enabled, then this function
panics. For this reason, it is recommended that callers use
<a href="fn.try_is_word_character.html" title="fn regex_syntax::try_is_word_character"><code>try_is_word_character</code></a> instead.</p>
</div></details></section></div></main></body></html>

View File

@@ -0,0 +1,8 @@
<!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="A convenience routine for parsing a regex using default options."><title>parse in regex_syntax - 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-ca0dd0c4.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="regex_syntax" data-themes="" data-resource-suffix="" data-rustdoc-version="1.93.1 (01f6ddf75 2026-02-11) (Arch Linux rust 1:1.93.1-1)" data-channel="1.93.1" data-search-js="search-9e2438ea.js" data-stringdex-js="stringdex-a3946164.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-a410ff4d.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 fn"><!--[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="#">parse</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../regex_syntax/index.html">regex_<wbr>syntax</a><span class="version">0.8.10</span></h2></div><div class="sidebar-elems"><div id="rustdoc-modnav"></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">regex_syntax</a></div><h1>Function <span class="fn">parse</span>&nbsp;<button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"><a class="src" href="../src/regex_syntax/parser.rs.html#13-15">Source</a> </span></div><pre class="rust item-decl"><code>pub fn parse(pattern: &amp;<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.str.html">str</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="struct" href="hir/struct.Hir.html" title="struct regex_syntax::hir::Hir">Hir</a>, <a class="enum" href="enum.Error.html" title="enum regex_syntax::Error">Error</a>&gt;</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>A convenience routine for parsing a regex using default options.</p>
<p>This is equivalent to <code>Parser::new().parse(pattern)</code>.</p>
<p>If you need to set non-default options, then use a <a href="struct.ParserBuilder.html" title="struct regex_syntax::ParserBuilder"><code>ParserBuilder</code></a>.</p>
<p>This routine returns an <a href="hir/struct.Hir.html" title="struct regex_syntax::hir::Hir"><code>Hir</code></a> value. Namely, it automatically
parses the pattern as an <a href="ast/enum.Ast.html" title="enum regex_syntax::ast::Ast"><code>Ast</code></a> and then invokes the translator
to convert the <code>Ast</code> into an <code>Hir</code>. If you need access to the <code>Ast</code>, then
you should use a <a href="ast/parse/struct.Parser.html" title="struct regex_syntax::ast::parse::Parser"><code>ast::parse::Parser</code></a>.</p>
</div></details></section></div></main></body></html>

View File

@@ -0,0 +1,12 @@
<!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="Returns true if and only if the given character is a Unicode word character."><title>try_is_word_character in regex_syntax - 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-ca0dd0c4.css"><meta name="rustdoc-vars" data-root-path="../" data-static-root-path="../static.files/" data-current-crate="regex_syntax" data-themes="" data-resource-suffix="" data-rustdoc-version="1.93.1 (01f6ddf75 2026-02-11) (Arch Linux rust 1:1.93.1-1)" data-channel="1.93.1" data-search-js="search-9e2438ea.js" data-stringdex-js="stringdex-a3946164.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-a410ff4d.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 fn"><!--[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="#">try_is_word_character</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../regex_syntax/index.html">regex_<wbr>syntax</a><span class="version">0.8.10</span></h2></div><div class="sidebar-elems"><section id="rustdoc-toc"><h2 class="location"><a href="#">try_<wbr>is_<wbr>word_<wbr>character</a></h2><h3><a href="#">Sections</a></h3><ul class="block top-toc"><li><a href="#errors" title="Errors">Errors</a></li></ul></section><div id="rustdoc-modnav"><h2 class="in-crate"><a href="index.html">In crate regex_<wbr>syntax</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">regex_syntax</a></div><h1>Function <span class="fn">try_<wbr>is_<wbr>word_<wbr>character</span>&nbsp;<button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"><a class="src" href="../src/regex_syntax/lib.rs.html#368-372">Source</a> </span></div><pre class="rust item-decl"><code>pub fn try_is_word_character(c: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.char.html">char</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a>, <a class="struct" href="struct.UnicodeWordError.html" title="struct regex_syntax::UnicodeWordError">UnicodeWordError</a>&gt;</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Returns true if and only if the given character is a Unicode word
character.</p>
<p>A Unicode word character is defined by
<a href="https://unicode.org/reports/tr18/#Compatibility_Properties">UTS#18 Annex C</a>.
In particular, a character
is considered a word character if it is in either of the <code>Alphabetic</code> or
<code>Join_Control</code> properties, or is in one of the <code>Decimal_Number</code>, <code>Mark</code>
or <code>Connector_Punctuation</code> general categories.</p>
<h2 id="errors"><a class="doc-anchor" href="#errors">§</a>Errors</h2>
<p>If the <code>unicode-perl</code> feature is not enabled, then this function always
returns an error.</p>
</div></details></section></div></main></body></html>

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,12 @@
<!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="Executes an implementation of `Visitor` in constant stack space."><title>visit in regex_syntax::hir - 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-ca0dd0c4.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="regex_syntax" data-themes="" data-resource-suffix="" data-rustdoc-version="1.93.1 (01f6ddf75 2026-02-11) (Arch Linux rust 1:1.93.1-1)" data-channel="1.93.1" data-search-js="search-9e2438ea.js" data-stringdex-js="stringdex-a3946164.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-a410ff4d.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 fn"><!--[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="#">visit</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../regex_syntax/index.html">regex_<wbr>syntax</a><span class="version">0.8.10</span></h2></div><div class="sidebar-elems"><div id="rustdoc-modnav"><h2><a href="index.html">In regex_<wbr>syntax::<wbr>hir</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">regex_syntax</a>::<wbr><a href="index.html">hir</a></div><h1>Function <span class="fn">visit</span>&nbsp;<button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"><a class="src" href="../../src/regex_syntax/hir/visitor.rs.html#65-67">Source</a> </span></div><pre class="rust item-decl"><code>pub fn visit&lt;V: <a class="trait" href="trait.Visitor.html" title="trait regex_syntax::hir::Visitor">Visitor</a>&gt;(hir: &amp;<a class="struct" href="struct.Hir.html" title="struct regex_syntax::hir::Hir">Hir</a>, visitor: V) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Output" title="type regex_syntax::hir::Visitor::Output">Output</a>, V::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Err" title="type regex_syntax::hir::Visitor::Err">Err</a>&gt;</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Executes an implementation of <code>Visitor</code> in constant stack space.</p>
<p>This function will visit every node in the given <code>Hir</code> while calling
appropriate methods provided by the <a href="trait.Visitor.html" title="trait regex_syntax::hir::Visitor"><code>Visitor</code></a> trait.</p>
<p>The primary use case for this method is when one wants to perform case
analysis over an <code>Hir</code> without using a stack size proportional to the depth
of the <code>Hir</code>. Namely, this method will instead use constant stack space,
but will use heap space proportional to the size of the <code>Hir</code>. This may be
desirable in cases where the size of <code>Hir</code> is proportional to end user
input.</p>
<p>If the visitor returns an error at any point, then visiting is stopped and
the error is returned.</p>
</div></details></section></div></main></body></html>

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,6 @@
<!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="Returns the “rank” of the given byte."><title>rank in regex_syntax::hir::literal - 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-ca0dd0c4.css"><meta name="rustdoc-vars" data-root-path="../../../" data-static-root-path="../../../static.files/" data-current-crate="regex_syntax" data-themes="" data-resource-suffix="" data-rustdoc-version="1.93.1 (01f6ddf75 2026-02-11) (Arch Linux rust 1:1.93.1-1)" data-channel="1.93.1" data-search-js="search-9e2438ea.js" data-stringdex-js="stringdex-a3946164.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-a410ff4d.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 fn"><!--[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="#">rank</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../../regex_syntax/index.html">regex_<wbr>syntax</a><span class="version">0.8.10</span></h2></div><div class="sidebar-elems"><div id="rustdoc-modnav"><h2><a href="index.html">In regex_<wbr>syntax::<wbr>hir::<wbr>literal</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">regex_syntax</a>::<wbr><a href="../index.html">hir</a>::<wbr><a href="index.html">literal</a></div><h1>Function <span class="fn">rank</span>&nbsp;<button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"><a class="src" href="../../../src/regex_syntax/hir/literal.rs.html#2319-2321">Source</a> </span></div><pre class="rust item-decl"><code>pub fn rank(byte: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.u8.html">u8</a>) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.u8.html">u8</a></code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Returns the “rank” of the given byte.</p>
<p>The minimum rank value is <code>0</code> and the maximum rank value is <code>255</code>.</p>
<p>The rank of a byte is derived from a heuristic background distribution of
relative frequencies of bytes. The heuristic says that lower the rank of a
byte, the less likely that byte is to appear in any arbitrary haystack.</p>
</div></details></section></div></main></body></html>

View File

@@ -0,0 +1,45 @@
<!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="Provides literal extraction from `Hir` expressions."><title>regex_syntax::hir::literal - 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-ca0dd0c4.css"><meta name="rustdoc-vars" data-root-path="../../../" data-static-root-path="../../../static.files/" data-current-crate="regex_syntax" data-themes="" data-resource-suffix="" data-rustdoc-version="1.93.1 (01f6ddf75 2026-02-11) (Arch Linux rust 1:1.93.1-1)" data-channel="1.93.1" data-search-js="search-9e2438ea.js" data-stringdex-js="stringdex-a3946164.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-a410ff4d.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 mod"><!--[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="#">Module literal</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../../regex_syntax/index.html">regex_<wbr>syntax</a><span class="version">0.8.10</span></h2></div><div class="sidebar-elems"><section id="rustdoc-toc"><h2 class="location"><a href="#">Module literal</a></h2><h3><a href="#structs">Module Items</a></h3><ul class="block"><li><a href="#structs" title="Structs">Structs</a></li><li><a href="#enums" title="Enums">Enums</a></li><li><a href="#functions" title="Functions">Functions</a></li></ul></section><div id="rustdoc-modnav"><h2><a href="../index.html">In regex_<wbr>syntax::<wbr>hir</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">regex_syntax</a>::<wbr><a href="../index.html">hir</a></div><h1>Module <span>literal</span>&nbsp;<button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"><a class="src" href="../../../src/regex_syntax/hir/literal.rs.html#1-3214">Source</a> </span></div><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Provides literal extraction from <code>Hir</code> expressions.</p>
<p>An <a href="struct.Extractor.html" title="struct regex_syntax::hir::literal::Extractor"><code>Extractor</code></a> pulls literals out of <a href="../struct.Hir.html" title="struct regex_syntax::hir::Hir"><code>Hir</code></a> expressions and returns a
<a href="struct.Seq.html" title="struct regex_syntax::hir::literal::Seq"><code>Seq</code></a> of <a href="struct.Literal.html" title="struct regex_syntax::hir::literal::Literal"><code>Literal</code></a>s.</p>
<p>The purpose of literal extraction is generally to provide avenues for
optimizing regex searches. The main idea is that substring searches can be an
order of magnitude faster than a regex search. Therefore, if one can execute
a substring search to find candidate match locations and only run the regex
search at those locations, then it is possible for huge improvements in
performance to be realized.</p>
<p>With that said, literal optimizations are generally a black art because even
though substring search is generally faster, if the number of candidates
produced is high, then it can create a lot of overhead by ping-ponging between
the substring search and the regex search.</p>
<p>Here are some heuristics that might be used to help increase the chances of
effective literal optimizations:</p>
<ul>
<li>Stick to small <a href="struct.Seq.html" title="struct regex_syntax::hir::literal::Seq"><code>Seq</code></a>s. If you search for too many literals, its likely
to lead to substring search that is only a little faster than a regex search,
and thus the overhead of using literal optimizations in the first place might
make things slower overall.</li>
<li>The literals in your <a href="struct.Seq.html" title="struct regex_syntax::hir::literal::Seq"><code>Seq</code></a> shouldnt be too short. In general, longer is
better. A sequence corresponding to single bytes that occur frequently in the
haystack, for example, is probably a bad literal optimization because its
likely to produce many false positive candidates. Longer literals are less
likely to match, and thus probably produce fewer false positives.</li>
<li>If its possible to estimate the approximate frequency of each byte according
to some pre-computed background distribution, it is possible to compute a score
of how “good” a <code>Seq</code> is. If a <code>Seq</code> isnt good enough, you might consider
skipping the literal optimization and just use the regex engine.</li>
</ul>
<p>(It should be noted that there are always pathological cases that can make
any kind of literal optimization be a net slower result. This is why it
might be a good idea to be conservative, or to even provide a means for
literal optimizations to be dynamically disabled if they are determined to be
ineffective according to some measure.)</p>
<p>Youre encouraged to explore the methods on <a href="struct.Seq.html" title="struct regex_syntax::hir::literal::Seq"><code>Seq</code></a>, which permit shrinking
the size of sequences in a preference-order preserving fashion.</p>
<p>Finally, note that it isnt strictly necessary to use an <a href="struct.Extractor.html" title="struct regex_syntax::hir::literal::Extractor"><code>Extractor</code></a>. Namely,
an <code>Extractor</code> only uses public APIs of the <a href="struct.Seq.html" title="struct regex_syntax::hir::literal::Seq"><code>Seq</code></a> and <a href="struct.Literal.html" title="struct regex_syntax::hir::literal::Literal"><code>Literal</code></a> types,
so it is possible to implement your own extractor. For example, for n-grams
or “inner” literals (i.e., not prefix or suffix literals). The <code>Extractor</code>
is mostly responsible for the case analysis over <code>Hir</code> expressions. Much of
the “trickier” parts are how to combine literal sequences, and that is all
implemented on <a href="struct.Seq.html" title="struct regex_syntax::hir::literal::Seq"><code>Seq</code></a>.</p>
</div></details><h2 id="structs" class="section-header">Structs<a href="#structs" class="anchor">§</a></h2><dl class="item-table"><dt><a class="struct" href="struct.Extractor.html" title="struct regex_syntax::hir::literal::Extractor">Extractor</a></dt><dd>Extracts prefix or suffix literal sequences from <a href="../struct.Hir.html" title="struct regex_syntax::hir::Hir"><code>Hir</code></a> expressions.</dd><dt><a class="struct" href="struct.Literal.html" title="struct regex_syntax::hir::literal::Literal">Literal</a></dt><dd>A single literal extracted from an <a href="../struct.Hir.html" title="struct regex_syntax::hir::Hir"><code>Hir</code></a> expression.</dd><dt><a class="struct" href="struct.Seq.html" title="struct regex_syntax::hir::literal::Seq">Seq</a></dt><dd>A sequence of literals.</dd></dl><h2 id="enums" class="section-header">Enums<a href="#enums" class="anchor">§</a></h2><dl class="item-table"><dt><a class="enum" href="enum.ExtractKind.html" title="enum regex_syntax::hir::literal::ExtractKind">Extract<wbr>Kind</a></dt><dd>The kind of literals to extract from an <a href="../struct.Hir.html" title="struct regex_syntax::hir::Hir"><code>Hir</code></a> expression.</dd></dl><h2 id="functions" class="section-header">Functions<a href="#functions" class="anchor">§</a></h2><dl class="item-table"><dt><a class="fn" href="fn.rank.html" title="fn regex_syntax::hir::literal::rank">rank</a></dt><dd>Returns the “rank” of the given byte.</dd></dl></section></div></main></body></html>

View File

@@ -0,0 +1 @@
window.SIDEBAR_ITEMS = {"enum":["ExtractKind"],"fn":["rank"],"struct":["Extractor","Literal","Seq"]};

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,3 @@
<!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="This module provides a regular expression printer for `Hir`."><title>regex_syntax::hir::print - 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-ca0dd0c4.css"><meta name="rustdoc-vars" data-root-path="../../../" data-static-root-path="../../../static.files/" data-current-crate="regex_syntax" data-themes="" data-resource-suffix="" data-rustdoc-version="1.93.1 (01f6ddf75 2026-02-11) (Arch Linux rust 1:1.93.1-1)" data-channel="1.93.1" data-search-js="search-9e2438ea.js" data-stringdex-js="stringdex-a3946164.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-a410ff4d.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 mod"><!--[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="#">Module print</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../../regex_syntax/index.html">regex_<wbr>syntax</a><span class="version">0.8.10</span></h2></div><div class="sidebar-elems"><section id="rustdoc-toc"><h2 class="location"><a href="#">Module print</a></h2><h3><a href="#structs">Module Items</a></h3><ul class="block"><li><a href="#structs" title="Structs">Structs</a></li></ul></section><div id="rustdoc-modnav"><h2><a href="../index.html">In regex_<wbr>syntax::<wbr>hir</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">regex_syntax</a>::<wbr><a href="../index.html">hir</a></div><h1>Module <span>print</span>&nbsp;<button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"><a class="src" href="../../../src/regex_syntax/hir/print.rs.html#1-608">Source</a> </span></div><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>This module provides a regular expression printer for <code>Hir</code>.</p>
</div></details><h2 id="structs" class="section-header">Structs<a href="#structs" class="anchor">§</a></h2><dl class="item-table"><dt><a class="struct" href="struct.Printer.html" title="struct regex_syntax::hir::print::Printer">Printer</a></dt><dd>A printer for a regular expressions high-level intermediate
representation.</dd></dl></section></div></main></body></html>

View File

@@ -0,0 +1 @@
window.SIDEBAR_ITEMS = {"struct":["Printer"]};

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1 @@
window.SIDEBAR_ITEMS = {"enum":["Class","Dot","ErrorKind","HirKind","Look"],"fn":["visit"],"mod":["literal","print","translate"],"struct":["Capture","CaseFoldError","ClassBytes","ClassBytesIter","ClassBytesRange","ClassUnicode","ClassUnicodeIter","ClassUnicodeRange","Error","Hir","Literal","LookSet","LookSetIter","Properties","Repetition"],"trait":["Visitor"]};

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -0,0 +1,33 @@
<!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="A trait for visiting the high-level IR (HIR) in depth first order."><title>Visitor in regex_syntax::hir - 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-ca0dd0c4.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="regex_syntax" data-themes="" data-resource-suffix="" data-rustdoc-version="1.93.1 (01f6ddf75 2026-02-11) (Arch Linux rust 1:1.93.1-1)" data-channel="1.93.1" data-search-js="search-9e2438ea.js" data-stringdex-js="stringdex-a3946164.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-a410ff4d.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 trait"><!--[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="#">Visitor</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../regex_syntax/index.html">regex_<wbr>syntax</a><span class="version">0.8.10</span></h2></div><div class="sidebar-elems"><section id="rustdoc-toc"><h2 class="location"><a href="#">Visitor</a></h2><h3><a href="#required-associated-types">Required Associated Types</a></h3><ul class="block"><li><a href="#associatedtype.Err" title="Err">Err</a></li><li><a href="#associatedtype.Output" title="Output">Output</a></li></ul><h3><a href="#required-methods">Required Methods</a></h3><ul class="block"><li><a href="#tymethod.finish" title="finish">finish</a></li></ul><h3><a href="#provided-methods">Provided Methods</a></h3><ul class="block"><li><a href="#method.start" title="start">start</a></li><li><a href="#method.visit_alternation_in" title="visit_alternation_in">visit_alternation_in</a></li><li><a href="#method.visit_concat_in" title="visit_concat_in">visit_concat_in</a></li><li><a href="#method.visit_post" title="visit_post">visit_post</a></li><li><a href="#method.visit_pre" title="visit_pre">visit_pre</a></li></ul><h3><a href="#implementors">Implementors</a></h3></section><div id="rustdoc-modnav"><h2><a href="index.html">In regex_<wbr>syntax::<wbr>hir</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">regex_syntax</a>::<wbr><a href="index.html">hir</a></div><h1>Trait <span class="trait">Visitor</span>&nbsp;<button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"><a class="src" href="../../src/regex_syntax/hir/visitor.rs.html#15-49">Source</a> </span></div><pre class="rust item-decl"><code>pub trait Visitor {
type <a href="#associatedtype.Output" class="associatedtype">Output</a>;
type <a href="#associatedtype.Err" class="associatedtype">Err</a>;
// Required method
fn <a href="#tymethod.finish" class="fn">finish</a>(self) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Output" title="type regex_syntax::hir::Visitor::Output">Output</a>, Self::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Err" title="type regex_syntax::hir::Visitor::Err">Err</a>&gt;;
// Provided methods
fn <a href="#method.start" class="fn">start</a>(&amp;mut self) { ... }
<span class="item-spacer"></span> fn <a href="#method.visit_pre" class="fn">visit_pre</a>(&amp;mut self, _hir: &amp;<a class="struct" href="struct.Hir.html" title="struct regex_syntax::hir::Hir">Hir</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>, Self::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Err" title="type regex_syntax::hir::Visitor::Err">Err</a>&gt; { ... }
<span class="item-spacer"></span> fn <a href="#method.visit_post" class="fn">visit_post</a>(&amp;mut self, _hir: &amp;<a class="struct" href="struct.Hir.html" title="struct regex_syntax::hir::Hir">Hir</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>, Self::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Err" title="type regex_syntax::hir::Visitor::Err">Err</a>&gt; { ... }
<span class="item-spacer"></span> fn <a href="#method.visit_alternation_in" class="fn">visit_alternation_in</a>(&amp;mut self) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>, Self::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Err" title="type regex_syntax::hir::Visitor::Err">Err</a>&gt; { ... }
<span class="item-spacer"></span> fn <a href="#method.visit_concat_in" class="fn">visit_concat_in</a>(&amp;mut self) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>, Self::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Err" title="type regex_syntax::hir::Visitor::Err">Err</a>&gt; { ... }
}</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>A trait for visiting the high-level IR (HIR) in depth first order.</p>
<p>The principle aim of this trait is to enable callers to perform case
analysis on a high-level intermediate representation of a regular
expression without necessarily using recursion. In particular, this permits
callers to do case analysis with constant stack usage, which can be
important since the size of an HIR may be proportional to end user input.</p>
<p>Typical usage of this trait involves providing an implementation and then
running it using the <a href="fn.visit.html" title="fn regex_syntax::hir::visit"><code>visit</code></a> function.</p>
</div></details><h2 id="required-associated-types" class="section-header">Required Associated Types<a href="#required-associated-types" class="anchor">§</a></h2><div class="methods"><details class="toggle" open><summary><section id="associatedtype.Output" class="method"><a class="src rightside" href="../../src/regex_syntax/hir/visitor.rs.html#17">Source</a><h4 class="code-header">type <a href="#associatedtype.Output" class="associatedtype">Output</a></h4></section></summary><div class="docblock"><p>The result of visiting an HIR.</p>
</div></details><details class="toggle" open><summary><section id="associatedtype.Err" class="method"><a class="src rightside" href="../../src/regex_syntax/hir/visitor.rs.html#19">Source</a><h4 class="code-header">type <a href="#associatedtype.Err" class="associatedtype">Err</a></h4></section></summary><div class="docblock"><p>An error that visiting an HIR might return.</p>
</div></details></div><h2 id="required-methods" class="section-header">Required Methods<a href="#required-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="tymethod.finish" class="method"><a class="src rightside" href="../../src/regex_syntax/hir/visitor.rs.html#23">Source</a><h4 class="code-header">fn <a href="#tymethod.finish" class="fn">finish</a>(self) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Self::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Output" title="type regex_syntax::hir::Visitor::Output">Output</a>, Self::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Err" title="type regex_syntax::hir::Visitor::Err">Err</a>&gt;</h4></section></summary><div class="docblock"><p>All implementors of <code>Visitor</code> must provide a <code>finish</code> method, which
yields the result of visiting the HIR or an error.</p>
</div></details></div><h2 id="provided-methods" class="section-header">Provided Methods<a href="#provided-methods" class="anchor">§</a></h2><div class="methods"><details class="toggle method-toggle" open><summary><section id="method.start" class="method"><a class="src rightside" href="../../src/regex_syntax/hir/visitor.rs.html#26">Source</a><h4 class="code-header">fn <a href="#method.start" class="fn">start</a>(&amp;mut self)</h4></section></summary><div class="docblock"><p>This method is called before beginning traversal of the HIR.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.visit_pre" class="method"><a class="src rightside" href="../../src/regex_syntax/hir/visitor.rs.html#30-32">Source</a><h4 class="code-header">fn <a href="#method.visit_pre" class="fn">visit_pre</a>(&amp;mut self, _hir: &amp;<a class="struct" href="struct.Hir.html" title="struct regex_syntax::hir::Hir">Hir</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>, Self::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Err" title="type regex_syntax::hir::Visitor::Err">Err</a>&gt;</h4></section></summary><div class="docblock"><p>This method is called on an <code>Hir</code> before descending into child <code>Hir</code>
nodes.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.visit_post" class="method"><a class="src rightside" href="../../src/regex_syntax/hir/visitor.rs.html#36-38">Source</a><h4 class="code-header">fn <a href="#method.visit_post" class="fn">visit_post</a>(&amp;mut self, _hir: &amp;<a class="struct" href="struct.Hir.html" title="struct regex_syntax::hir::Hir">Hir</a>) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>, Self::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Err" title="type regex_syntax::hir::Visitor::Err">Err</a>&gt;</h4></section></summary><div class="docblock"><p>This method is called on an <code>Hir</code> after descending all of its child
<code>Hir</code> nodes.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.visit_alternation_in" class="method"><a class="src rightside" href="../../src/regex_syntax/hir/visitor.rs.html#41-43">Source</a><h4 class="code-header">fn <a href="#method.visit_alternation_in" class="fn">visit_alternation_in</a>(&amp;mut self) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>, Self::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Err" title="type regex_syntax::hir::Visitor::Err">Err</a>&gt;</h4></section></summary><div class="docblock"><p>This method is called between child nodes of an alternation.</p>
</div></details><details class="toggle method-toggle" open><summary><section id="method.visit_concat_in" class="method"><a class="src rightside" href="../../src/regex_syntax/hir/visitor.rs.html#46-48">Source</a><h4 class="code-header">fn <a href="#method.visit_concat_in" class="fn">visit_concat_in</a>(&amp;mut self) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>, Self::<a class="associatedtype" href="trait.Visitor.html#associatedtype.Err" title="type regex_syntax::hir::Visitor::Err">Err</a>&gt;</h4></section></summary><div class="docblock"><p>This method is called between child nodes of a concatenation.</p>
</div></details></div><h2 id="implementors" class="section-header">Implementors<a href="#implementors" class="anchor">§</a></h2><div id="implementors-list"></div><script src="../../trait.impl/regex_syntax/hir/visitor/trait.Visitor.js" async></script></section></div></main></body></html>

View File

@@ -0,0 +1,3 @@
<!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="Defines a translator that converts an `Ast` to an `Hir`."><title>regex_syntax::hir::translate - 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-ca0dd0c4.css"><meta name="rustdoc-vars" data-root-path="../../../" data-static-root-path="../../../static.files/" data-current-crate="regex_syntax" data-themes="" data-resource-suffix="" data-rustdoc-version="1.93.1 (01f6ddf75 2026-02-11) (Arch Linux rust 1:1.93.1-1)" data-channel="1.93.1" data-search-js="search-9e2438ea.js" data-stringdex-js="stringdex-a3946164.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-a410ff4d.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 mod"><!--[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="#">Module translate</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../../regex_syntax/index.html">regex_<wbr>syntax</a><span class="version">0.8.10</span></h2></div><div class="sidebar-elems"><section id="rustdoc-toc"><h2 class="location"><a href="#">Module translate</a></h2><h3><a href="#structs">Module Items</a></h3><ul class="block"><li><a href="#structs" title="Structs">Structs</a></li></ul></section><div id="rustdoc-modnav"><h2><a href="../index.html">In regex_<wbr>syntax::<wbr>hir</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">regex_syntax</a>::<wbr><a href="../index.html">hir</a></div><h1>Module <span>translate</span>&nbsp;<button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"><a class="src" href="../../../src/regex_syntax/hir/translate.rs.html#1-3744">Source</a> </span></div><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Defines a translator that converts an <code>Ast</code> to an <code>Hir</code>.</p>
</div></details><h2 id="structs" class="section-header">Structs<a href="#structs" class="anchor">§</a></h2><dl class="item-table"><dt><a class="struct" href="struct.Translator.html" title="struct regex_syntax::hir::translate::Translator">Translator</a></dt><dd>A translator maps abstract syntax to a high level intermediate
representation.</dd><dt><a class="struct" href="struct.TranslatorBuilder.html" title="struct regex_syntax::hir::translate::TranslatorBuilder">Translator<wbr>Builder</a></dt><dd>A builder for constructing an AST-&gt;HIR translator.</dd></dl></section></div></main></body></html>

Some files were not shown because too many files have changed in this diff Show More