JsonCreate.js 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. let stringLiteral=[];
  2. let script ={};
  3. let scriptString=[];
  4. let scriptMethod=[];
  5. let scriptMetadata=[]; //typeInfo
  6. let scriptMetadataMethod=[];
  7. let addresses=[];
  8. export var JsonCreate = {
  9. addStringLiteralToStringLiteralMap: function (addr,value) {
  10. let string ={};
  11. string.Value =value;
  12. string.Address ="0x"+addr.toString(16).toUpperCase();
  13. stringLiteral.push(string);
  14. },
  15. parserStringLiteralToString: function (){
  16. return JSON.stringify(stringLiteral);
  17. },
  18. addStringLiteralToScript(addr, stringLiteral) {
  19. let string ={};
  20. string.Address =parseInt(addr);
  21. string.Value =stringLiteral;
  22. scriptString.push(string);
  23. },
  24. parserScriptToString:function (){
  25. script.ScriptMethod=scriptMethod;
  26. script.ScriptString =scriptString;
  27. script.ScriptMetadata=scriptMetadata;
  28. script.ScriptMetadataMethod=scriptMetadataMethod;
  29. script.Addresses=addresses;
  30. return JSON.stringify(script);
  31. },
  32. addTypeInfoToScript(addr, namespaze, name) {
  33. let metadata={};
  34. metadata.Address=parseInt(addr);
  35. metadata.Name =namespaze+"."+name+"_TypeInfo";
  36. scriptMetadata.push(metadata);
  37. },
  38. addCppTypeToScript(addr, namespaze, name) {
  39. let metadata={};
  40. metadata.Address=parseInt(addr);
  41. metadata.Name =namespaze+"."+name+"_var";
  42. scriptMetadata.push(metadata);
  43. },
  44. addFieldInfoToScript(addr, name, filedName) {
  45. let metadata={};
  46. metadata.Address=parseInt(addr);
  47. metadata.Name ="Field$"+name+"."+filedName;
  48. scriptMetadata.push(metadata);
  49. },
  50. addMethodInfoToScriptMethod(spaze,className,methodName,addr) {
  51. let method ={};
  52. method.Address=parseInt(addr);
  53. method.Name =spaze+"."+className+"$$"+methodName;
  54. scriptMethod.push(method);
  55. },
  56. addMetadataMethodToScript(addr,spaze,className,methodName,methodAddr) {
  57. let method={};
  58. method.Address=parseInt(addr);
  59. method.Name="method$"+spaze+"."+className+"."+methodName;
  60. method.MethodAddress=parseInt(methodAddr);
  61. scriptMetadataMethod.push(method);
  62. },
  63. addAddressToScriptAddress(addr) {
  64. addresses.push(parseInt(addr));
  65. }
  66. }