Expand description
Everything about parsing text into text annotated with scopes.
The most important struct here is SyntaxSet
, check out the docs for that.
Re-exports§
pub use self::syntax_definition::SyntaxDefinition;
Modules§
- syntax_
definition - Data structures for representing syntax definitions
Structs§
- Match
Power - Wrapper to get around the fact Rust
f64
doesn’t implementOrd
and there is no non-NaN float type - Parse
State - Keeps the current parser state (the internal syntax interpreter stack) between lines of parsing.
- Regex
- An abstraction for regex patterns.
- Region
- A region contains text positions for capture groups in a match result.
- Scope
- A hierarchy of atoms with semi-standardized names used to accord semantic information to a specific piece of text.
- Scope
Repository - The structure used to keep track of the mapping between scope atom numbers and their string names
- Scope
Stack - A stack/sequence of scopes for representing hierarchies for a given token of text
- Syntax
Reference - A linked version of a
SyntaxDefinition
that is only useful as part of theSyntaxSet
that contains it. See docs forSyntaxSetBuilder::build
for more info. - Syntax
Set - A syntax set holds multiple syntaxes that have been linked together.
- Syntax
SetBuilder - A syntax set builder is used for loading syntax definitions from the file
system or by adding
SyntaxDefinition
objects.
Enums§
- Basic
Scope Stack Op - Used for
ScopeStack::apply_with_hook
- Clear
Amount - Parse
Scope Error - Not all strings are valid scopes
- Parse
Syntax Error - Parsing
Error - Errors that can occur while parsing.
- Scope
Error - Scope related errors
- Scope
Stack Op - A change to a scope stack
Constants§
- ATOM_
LEN_ BITS - Multiplier on the power of 2 for MatchPower. This is only useful if you compute your own
MatchPower
scores
Statics§
- SCOPE_
REPO - The global scope repo, exposed in case you want to minimize locking and unlocking.