# snowball v0.1.1 - Table of Contents

Snowball string-processing language compiler and runtime for Elixir. Compiles `.sbl` files into Elixir modules and provides the runtime support functions those generated modules call into.

## Pages

- [Snowball](readme.md)
- [Changelog](changelog.md)

## Modules

- [Snowball](Snowball.md): Snowball string-processing language compiler and runtime for Elixir.
- [Snowball.Analyser](Snowball.Analyser.md): Parses a Snowball token stream into a typed AST with a symbol table.
- [Snowball.Generator](Snowball.Generator.md): Elixir code generator for Snowball programs.
- [Snowball.Grouping](Snowball.Grouping.md): Compile-time helpers for building Snowball grouping bit-tables.
- [Snowball.Lexer](Snowball.Lexer.md): Tokeniser for the Snowball string-processing language.
- [Snowball.Preprocessor](Snowball.Preprocessor.md): Source-level preprocessor for Snowball `.sbl` files.
- [Snowball.Runtime](Snowball.Runtime.md): Runtime state and primitive operations for Snowball stemmers.

## Mix Tasks

- [mix snowball.gen](Mix.Tasks.Snowball.Gen.md): Generate Elixir stemmer modules from Snowball `.sbl` algorithm sources.

