API Reference Ergo v0.4.6


Elixir Parser Combinators Author: Matt Mower matt@theartofnavigation.co.uk Version: 0.3.5

Ergo.Combinators is the key set of parsers used for combining together other parsers.

Ergo.Context defines the Context struct that is used to maintain parser state as the various parsers work, and various functions for creating & manipulating contexts.

The Meta parsers are not really parsers at all but operate within the parsing framework.

The Parsers module exists to house utility parsers that while they are terminals in the sense that they are not parameterised, they internally make use of parsers from the Combinators module.

Ergo.Parser contains the Parser record type. Ergo parsers are anonymous functions but we embed them in a Parser record that can hold arbitrary metadata. The primary use for the metadata is the storage of debugging information.

Context user-data represents a stack rather than a map or plain list, so we'll create an interface that is more stack like than the list interface.

Ergo.Terminals contains the terminal parsers, which are those parsers not parameterized with other parsers and therefore work more at the level of text than structure.