Crate multilinear_parser

Source
Expand description

The multilinear-parser library provides functionality to parse a multilinear system from a text-based format. It allows you to define events, which rely on various channel specific conditions or changes using a markdown inspired syntax.

Example Event Syntax:

# Move to Livingroom

place: bedroom > livingroom

# Get Dressed

place: bedroom
clothes: pajamas > casual

Supports logical combinations:

(clothes: pajamas | clothes: casual) & place: bedroom

Structs§

Error
Represents errors that can occur during parsing.
IndexMap
Stores index based maps.
MultilinearParser
A parser for multilinear system definitions, supporting incremental parsing across multiple files or input streams.
NamedMultilinearInfo
A multilinear info containing the mapped channel and event names.

Enums§

ChannelAddingError
Represents errors that can occur when adding a channel manually.
ConditionParsingError
Represents errors that can occur when parsing conditions.
ErrorKind
Represents the kinds of errors that can occur when parsing a line.

Functions§

parse_multilinear
Parses a complete multilinear system from a single reader.