whamm 0.1.0

A framework for 'Wasm Application Monitoring and Manipulation'
Documentation
# Phase 5: Emit #

Here is documentation describing how we _emit_ `.mm` scripts.

## Some Helpful Concepts ##

**What is a `generator`?**
A `generator` is used to traverse some representation of logic in an abstract way.
It then calls the `emitter` when appropriate to actually emit the code in the target representation.

**What is an `emitter`?**
The `emitter` exposes an API that can be called to emit code in the target representation.
There will be as many emitters as there are target representations supported by the language.

## The Injection Strategies ##

The code that is emitted, and the methodology in which emitting happens, depends on the injection strategy specified by the user.

There are currently two supported injection strategies:
1. [Bytecode Rewriting]./rewriting.md
2. Interfacing with an [engine]wei.md