Expand description
Types related to in-memory buffers.
Structs§
- Buffer
- A feature-rich wrapper around an underlying gap buffer.
- Cursor
- Read-only wrapper for a
Position, to allow field level access to a buffer’s cursor while simultaneously enforcing bounds-checking when updating its value. - Distance
- A vector value representing a span in a buffer. Unlike the Range type, whose two positions are absolutes, a Distance is meant to be used relative to a Position.
- GapBuffer
- A UTF-8 string buffer designed to minimize reallocations, maintaining performance amid frequent modifications.
- Lexeme
- Line
Range - A more concise expression for ranges spanning complete lines.
- Position
- A two (zero-based) coordinate value representing a location in a buffer.
The
offsetfield is so named to emphasize that positions point to locations before/after characters, not characters themselves, in an effort to avoid fencepost errors. - Range
- A two-position type, representing a span of characters.
- Scope
- A hierarchy of atoms with semi-standardized names used to accord semantic information to a specific piece of text.
- Scope
Stack - A stack/sequence of scopes for representing hierarchies for a given token of text
- Token
Set