Expand description
SISE (Simple S-expression) is a file format based on S-expressions.
Macros
Macro to define values with a lighter syntax.
Structs
Utility to read atom nodes.
Helper struct to build SISE trees and get index paths
of the inserted nodes.
Base struct from which
Builder
are created.
See Builder
example.Compact style that only inserts spaces between list elements.
Utility to read list nodes.
Iterator over the items of the list in a
ListNodeReadUtil
that produces NodeReadUtil
.Utility to read nodes.
Structure to specify parsing limits.
Represents a position in a text file.
Maps nodes with their positions in the original text file.
Wrapper whose
Display
implementation prints
self.0 + 1
, taking care of overflow.Structure to configure the
SpacedStyle
style.Style that breaks list in lines and indents them.
Enums
A SISE node.
Represents a parse error.
Traits
Trait that allows to implement serialization styles.
Functions
Checks whether
atom
is a valid atom (i.e. matches the regular
expression documented at Node::Atom
).Returns whether
chr
is a valid atom character outside a
string (i.e. one of :atomchar:
documented at Node::Atom
).Returns whether
chr
is a valid atom character inside a
string, excluding "
and \
(i.e. one of :stringchar:
documented at Node::Atom
).Parses
data
. If successful, it returns the root node and a position
map that allows to fetch the position (line and column) of each node.Serializes
root_node
, returning the result.Serializes
root_node
, appending the result to output
.