gwr/parser
Values
pub fn do_parse_instructions_until(
reader: byte_reader.ByteReader,
predicate: fn(spec.Instruction) -> Bool,
accumulator: List(spec.Instruction),
) -> Result(
#(byte_reader.ByteReader, List(spec.Instruction)),
parsing_error.ParsingError,
)
pub const global_index_id: Int
pub fn is_value_type(data: BitArray) -> Bool
pub const memory_index_id: Int
pub fn parse_binary_module(
from reader: byte_reader.ByteReader,
) -> Result(
#(byte_reader.ByteReader, spec.Binary),
parsing_error.ParsingError,
)
pub fn parse_block_type(
from reader: byte_reader.ByteReader,
) -> Result(
#(byte_reader.ByteReader, spec.BlockType),
parsing_error.ParsingError,
)
pub fn parse_code(
from reader: byte_reader.ByteReader,
) -> Result(
#(byte_reader.ByteReader, spec.Code),
parsing_error.ParsingError,
)
pub fn parse_export(
from reader: byte_reader.ByteReader,
) -> Result(
#(byte_reader.ByteReader, spec.Export),
parsing_error.ParsingError,
)
pub fn parse_expression(
from reader: byte_reader.ByteReader,
) -> Result(
#(byte_reader.ByteReader, List(spec.Instruction)),
parsing_error.ParsingError,
)
pub fn parse_function_code(
from reader: byte_reader.ByteReader,
) -> Result(
#(byte_reader.ByteReader, spec.FunctionCode),
parsing_error.ParsingError,
)
pub fn parse_function_type(
from reader: byte_reader.ByteReader,
) -> Result(
#(byte_reader.ByteReader, spec.FunctionType),
parsing_error.ParsingError,
)
Decodes a bit array into a FunctionType. The FunctionType bit array begins with 0x60 byte id and follows with 2 vectors, each containing an arbitrary amount of 1-byte ValueType(s). The first vector represents the list of parameter types of the function, while the second vector represents the list of result types returned by the function.
pub fn parse_global(
from reader: byte_reader.ByteReader,
) -> Result(
#(byte_reader.ByteReader, spec.Global),
parsing_error.ParsingError,
)
pub fn parse_global_type(
from reader: byte_reader.ByteReader,
) -> Result(
#(byte_reader.ByteReader, spec.GlobalType),
parsing_error.ParsingError,
)
pub fn parse_instruction(
from reader: byte_reader.ByteReader,
) -> Result(
#(byte_reader.ByteReader, spec.Instruction),
parsing_error.ParsingError,
)
parser/instruction_parser
pub fn parse_instructions_until(
from reader: byte_reader.ByteReader,
with predicate: fn(spec.Instruction) -> Bool,
) -> Result(
#(byte_reader.ByteReader, List(spec.Instruction)),
parsing_error.ParsingError,
)
pub fn parse_le32_float(
from reader: byte_reader.ByteReader,
) -> Result(
#(byte_reader.ByteReader, ieee_float.IEEEFloat),
parsing_error.ParsingError,
)
pub fn parse_le64_float(
from reader: byte_reader.ByteReader,
) -> Result(
#(byte_reader.ByteReader, ieee_float.IEEEFloat),
parsing_error.ParsingError,
)
pub fn parse_limits(
from reader: byte_reader.ByteReader,
) -> Result(
#(byte_reader.ByteReader, spec.Limits),
parsing_error.ParsingError,
)
pub fn parse_locals_declaration(
from reader: byte_reader.ByteReader,
) -> Result(
#(byte_reader.ByteReader, spec.LocalsDeclaration),
parsing_error.ParsingError,
)
parser/binary_parser
pub fn parse_memory(
from reader: byte_reader.ByteReader,
) -> Result(
#(byte_reader.ByteReader, spec.Memory),
parsing_error.ParsingError,
)
pub fn parse_name(
from reader: byte_reader.ByteReader,
) -> Result(
#(byte_reader.ByteReader, String),
parsing_error.ParsingError,
)
pub fn parse_section(
from reader: byte_reader.ByteReader,
) -> Result(
#(byte_reader.ByteReader, spec.Section),
parsing_error.ParsingError,
)
pub fn parse_signed_leb128_integer(
from reader: byte_reader.ByteReader,
) -> Result(
#(byte_reader.ByteReader, Int),
parsing_error.ParsingError,
)
pub fn parse_uninterpreted_leb128_integer(
from reader: byte_reader.ByteReader,
) -> Result(
#(byte_reader.ByteReader, Int),
parsing_error.ParsingError,
)
pub fn parse_unsigned_leb128_integer(
from reader: byte_reader.ByteReader,
) -> Result(
#(byte_reader.ByteReader, Int),
parsing_error.ParsingError,
)
parser/value_parser
pub fn parse_value_type(
from reader: byte_reader.ByteReader,
) -> Result(
#(byte_reader.ByteReader, spec.ValueType),
parsing_error.ParsingError,
)
parser/types_parser
pub fn parse_vector(
from reader: byte_reader.ByteReader,
with parse_element: fn(byte_reader.ByteReader) -> Result(
#(byte_reader.ByteReader, a),
parsing_error.ParsingError,
),
) -> Result(
#(byte_reader.ByteReader, List(a)),
parsing_error.ParsingError,
)
parser/convention_parser
pub const table_index_id: Int