parser context object
compilation options
Track helper necessary functions generated
Primarily function exports. Compiled functions and stuff that go in main body of module
Functions to export
Set of imports
Don't include normal runtime boilerplate
Size in bytes of the nursery section of linear memory (see planning/implementation/lm.md)
Optimization level for compilation (0-3)
Size in bytes of the references stack section of linear memory (see planning/implementation/lm.md)
Static data section of linear memory
Indicates if data is const or user modifiyable
Function ids to be added to the table
Used to generate unique importIds
Export a function
function to export
Define a helper/utility function that we don't really care about If it's already been defined return early
identifier for the helper function
Add an import
env scopes to import from
type of imported value
Store static data
data to save statically
if true we can check to see if it's already in data section and simply point to it
Add a function to the table
identifier for function to push into the table
index of the function
Make a copy
Generate import section of wasm
Generate code for the table section of the the runtime
wat code for the table section
Generate a wasm module from a template which includes our runtime
user's function definitions and exports
size of the references stack
wasm module text
Determine the amount of memory to use
Initialize static data to a specific value
address of static data to set
value to set static data to
Generates a hexstring that initializes the start of linear memory
Convert data to byte array
data source
data as array of bytes
Generated using TypeDoc
Manage relevant components of WASM module, needed for compilation
Note: Could rename to Compiler but too abstract