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.
		
		
		
		
		
			
		
			
				
					
					
						
							64 lines
						
					
					
						
							2.1 KiB
						
					
					
				
			
		
		
	
	
							64 lines
						
					
					
						
							2.1 KiB
						
					
					
				"use strict"; | 
						|
 | 
						|
Object.defineProperty(exports, "__esModule", { | 
						|
  value: true | 
						|
}); | 
						|
exports.encodeNode = encodeNode; | 
						|
exports.encodeU32 = void 0; | 
						|
 | 
						|
var encoder = _interopRequireWildcard(require("./encoder")); | 
						|
 | 
						|
function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : {}; if (desc.get || desc.set) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj.default = obj; return newObj; } } | 
						|
 | 
						|
function encodeNode(n) { | 
						|
  switch (n.type) { | 
						|
    case "ModuleImport": | 
						|
      // $FlowIgnore: ModuleImport ensure that the node is well formated | 
						|
      return encoder.encodeModuleImport(n); | 
						|
 | 
						|
    case "SectionMetadata": | 
						|
      // $FlowIgnore: SectionMetadata ensure that the node is well formated | 
						|
      return encoder.encodeSectionMetadata(n); | 
						|
 | 
						|
    case "CallInstruction": | 
						|
      // $FlowIgnore: SectionMetadata ensure that the node is well formated | 
						|
      return encoder.encodeCallInstruction(n); | 
						|
 | 
						|
    case "CallIndirectInstruction": | 
						|
      // $FlowIgnore: SectionMetadata ensure that the node is well formated | 
						|
      return encoder.encodeCallIndirectInstruction(n); | 
						|
 | 
						|
    case "TypeInstruction": | 
						|
      return encoder.encodeTypeInstruction(n); | 
						|
 | 
						|
    case "Instr": | 
						|
      // $FlowIgnore | 
						|
      return encoder.encodeInstr(n); | 
						|
 | 
						|
    case "ModuleExport": | 
						|
      // $FlowIgnore: SectionMetadata ensure that the node is well formated | 
						|
      return encoder.encodeModuleExport(n); | 
						|
 | 
						|
    case "Global": | 
						|
      // $FlowIgnore | 
						|
      return encoder.encodeGlobal(n); | 
						|
 | 
						|
    case "Func": | 
						|
      return encoder.encodeFuncBody(n); | 
						|
 | 
						|
    case "IndexInFuncSection": | 
						|
      return encoder.encodeIndexInFuncSection(n); | 
						|
 | 
						|
    case "StringLiteral": | 
						|
      return encoder.encodeStringLiteral(n); | 
						|
 | 
						|
    case "Elem": | 
						|
      return encoder.encodeElem(n); | 
						|
 | 
						|
    default: | 
						|
      throw new Error("Unsupported encoding for node of type: " + JSON.stringify(n.type)); | 
						|
  } | 
						|
} | 
						|
 | 
						|
var encodeU32 = encoder.encodeU32; | 
						|
exports.encodeU32 = encodeU32; |