You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
k_m_x 04c1a405c9
vision1
10 months ago
..
esm vision1 10 months ago
lib vision1 10 months ago
scripts vision1 10 months ago
LICENSE vision1 10 months ago
README.md vision1 10 months ago
package.json vision1 10 months ago

README.md

@webassemblyjs/ast

AST utils for webassemblyjs

Installation

yarn add @webassemblyjs/ast

Usage

Traverse

import { traverse } from "@webassemblyjs/ast";

traverse(ast, {
  Module(path) {
    console.log(path.node);
  }
});

Instruction signatures

import { signatures } from "@webassemblyjs/ast";

console.log(signatures);

Path methods

  • findParent: NodeLocator
  • replaceWith: Node => void
  • remove: () => void
  • insertBefore: Node => void
  • insertAfter: Node => void
  • stop: () => void

AST utils

  • function module(id, fields, metadata)
  • function moduleMetadata(sections, functionNames, localNames)
  • function moduleNameMetadata(value)
  • function functionNameMetadata(value, index)
  • function localNameMetadata(value, localIndex, functionIndex)
  • function binaryModule(id, blob)
  • function quoteModule(id, string)
  • function sectionMetadata(section, startOffset, size, vectorOfSize)
  • function loopInstruction(label, resulttype, instr)
  • function instruction(id, args, namedArgs)
  • function objectInstruction(id, object, args, namedArgs)
  • function ifInstruction(testLabel, test, result, consequent, alternate)
  • function stringLiteral(value)
  • function numberLiteralFromRaw(value, raw)
  • function longNumberLiteral(value, raw)
  • function floatLiteral(value, nan, inf, raw)
  • function elem(table, offset, funcs)
  • function indexInFuncSection(index)
  • function valtypeLiteral(name)
  • function typeInstruction(id, functype)
  • function start(index)
  • function globalType(valtype, mutability)
  • function leadingComment(value)
  • function blockComment(value)
  • function data(memoryIndex, offset, init)
  • function global(globalType, init, name)
  • function table(elementType, limits, name, elements)
  • function memory(limits, id)
  • function funcImportDescr(id, signature)
  • function moduleImport(module, name, descr)
  • function moduleExportDescr(exportType, id)
  • function moduleExport(name, descr)
  • function limit(min, max)
  • function signature(params, results)
  • function program(body)
  • function identifier(value, raw)
  • function blockInstruction(label, instr, result)
  • function callInstruction(index, instrArgs)
  • function callIndirectInstruction(signature, intrs)
  • function byteArray(values)
  • function func(name, signature, body, isExternal, metadata)
  • ConstantisModule
  • ConstantisModuleMetadata
  • ConstantisModuleNameMetadata
  • ConstantisFunctionNameMetadata
  • ConstantisLocalNameMetadata
  • ConstantisBinaryModule
  • ConstantisQuoteModule
  • ConstantisSectionMetadata
  • ConstantisLoopInstruction
  • ConstantisInstruction
  • ConstantisObjectInstruction
  • ConstantisIfInstruction
  • ConstantisStringLiteral
  • ConstantisNumberLiteral
  • ConstantisLongNumberLiteral
  • ConstantisFloatLiteral
  • ConstantisElem
  • ConstantisIndexInFuncSection
  • ConstantisValtypeLiteral
  • ConstantisTypeInstruction
  • ConstantisStart
  • ConstantisGlobalType
  • ConstantisLeadingComment
  • ConstantisBlockComment
  • ConstantisData
  • ConstantisGlobal
  • ConstantisTable
  • ConstantisMemory
  • ConstantisFuncImportDescr
  • ConstantisModuleImport
  • ConstantisModuleExportDescr
  • ConstantisModuleExport
  • ConstantisLimit
  • ConstantisSignature
  • ConstantisProgram
  • ConstantisIdentifier
  • ConstantisBlockInstruction
  • ConstantisCallInstruction
  • ConstantisCallIndirectInstruction
  • ConstantisByteArray
  • ConstantisFunc
  • ConstantassertModule
  • ConstantassertModuleMetadata
  • ConstantassertModuleNameMetadata
  • ConstantassertFunctionNameMetadata
  • ConstantassertLocalNameMetadata
  • ConstantassertBinaryModule
  • ConstantassertQuoteModule
  • ConstantassertSectionMetadata
  • ConstantassertLoopInstruction
  • ConstantassertInstruction
  • ConstantassertObjectInstruction
  • ConstantassertIfInstruction
  • ConstantassertStringLiteral
  • ConstantassertNumberLiteral
  • ConstantassertLongNumberLiteral
  • ConstantassertFloatLiteral
  • ConstantassertElem
  • ConstantassertIndexInFuncSection
  • ConstantassertValtypeLiteral
  • ConstantassertTypeInstruction
  • ConstantassertStart
  • ConstantassertGlobalType
  • ConstantassertLeadingComment
  • ConstantassertBlockComment
  • ConstantassertData
  • ConstantassertGlobal
  • ConstantassertTable
  • ConstantassertMemory
  • ConstantassertFuncImportDescr
  • ConstantassertModuleImport
  • ConstantassertModuleExportDescr
  • ConstantassertModuleExport
  • ConstantassertLimit
  • ConstantassertSignature
  • ConstantassertProgram
  • ConstantassertIdentifier
  • ConstantassertBlockInstruction
  • ConstantassertCallInstruction
  • ConstantassertCallIndirectInstruction
  • ConstantassertByteArray
  • ConstantassertFunc