let stringLiteral=[]; let script ={}; let scriptString=[]; let scriptMethod=[]; let scriptMetadata=[]; //typeInfo let scriptMetadataMethod=[]; let addresses=[]; export var JsonCreate = { addStringLiteralToStringLiteralMap: function (addr,value) { let string ={}; string.Value =value; string.Address ="0x"+addr.toString(16).toUpperCase(); stringLiteral.push(string); }, parserStringLiteralToString: function (){ return JSON.stringify(stringLiteral); }, addStringLiteralToScript(addr, stringLiteral) { let string ={}; string.Address =parseInt(addr); string.Value =stringLiteral; scriptString.push(string); }, parserScriptToString:function (){ script.ScriptMethod=scriptMethod; script.ScriptString =scriptString; script.ScriptMetadata=scriptMetadata; script.ScriptMetadataMethod=scriptMetadataMethod; script.Addresses=addresses; return JSON.stringify(script); }, addTypeInfoToScript(addr, namespaze, name) { let metadata={}; metadata.Address=parseInt(addr); metadata.Name =namespaze+"."+name+"_TypeInfo"; scriptMetadata.push(metadata); }, addCppTypeToScript(addr, namespaze, name) { let metadata={}; metadata.Address=parseInt(addr); metadata.Name =namespaze+"."+name+"_var"; scriptMetadata.push(metadata); }, addFieldInfoToScript(addr, name, filedName) { let metadata={}; metadata.Address=parseInt(addr); metadata.Name ="Field$"+name+"."+filedName; scriptMetadata.push(metadata); }, addMethodInfoToScriptMethod(spaze,className,methodName,addr) { let method ={}; method.Address=parseInt(addr); method.Name =spaze+"."+className+"$$"+methodName; scriptMethod.push(method); }, addMetadataMethodToScript(addr,spaze,className,methodName,methodAddr) { let method={}; method.Address=parseInt(addr); method.Name="method$"+spaze+"."+className+"."+methodName; method.MethodAddress=parseInt(methodAddr); scriptMetadataMethod.push(method); }, addAddressToScriptAddress(addr) { addresses.push(parseInt(addr)); } }