godprotocol 1.1.0 → 1.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (98) hide show
  1. package/Datatypes/arr.js +11 -0
  2. package/Datatypes/bool.js +11 -0
  3. package/Datatypes/callable.js +11 -0
  4. package/Datatypes/functions/storage.js +5 -0
  5. package/Datatypes/num.js +11 -0
  6. package/Datatypes/str.js +11 -0
  7. package/Datatypes/twa.js +11 -0
  8. package/Datatypes/voi.js +11 -0
  9. package/Index.js +36 -2
  10. package/Objects/Account.js +35 -322
  11. package/Objects/Block.js +7 -80
  12. package/Objects/Blockweb.js +19 -26
  13. package/Objects/Callable.js +40 -0
  14. package/Objects/Chain.js +20 -244
  15. package/Objects/GDS/Arena_classic/.config +1 -0
  16. package/Objects/GDS/Arena_classic/Accounts/lola/.config +1 -0
  17. package/Objects/Manager.js +28 -294
  18. package/Objects/Oracle.js +67 -84
  19. package/Objects/Repository.js +67 -0
  20. package/Objects/Trinity.js +24 -0
  21. package/Objects/Virtual_machine.js +16 -206
  22. package/callables/functions/assign.js +6 -0
  23. package/callables/functions/display.js +3 -0
  24. package/callables/register.js +22 -0
  25. package/package.json +24 -43
  26. package/utils/create_server.js +35 -88
  27. package/utils/functions.js +0 -70
  28. package/utils/server.cert +23 -0
  29. package/utils/server.key +28 -0
  30. package/utils/services.js +61 -21
  31. package/utils/vm_utils.js +53 -275
  32. package/Executables/callables.js +0 -131
  33. package/Executables/executables.js +0 -230
  34. package/Executables/functions/adminstrator/adm_register.js +0 -29
  35. package/Executables/functions/adminstrator/native_components.js +0 -10
  36. package/Executables/functions/adminstrator/query_selectors.js +0 -10
  37. package/Executables/functions/adminstrator/render.js +0 -24
  38. package/Executables/functions/array_register.js +0 -161
  39. package/Executables/functions/assign.js +0 -19
  40. package/Executables/functions/display.js +0 -55
  41. package/Executables/functions/folder.js +0 -95
  42. package/Executables/functions/folder_register.js +0 -87
  43. package/Executables/functions/importcheck.js +0 -13
  44. package/Executables/functions/indices.js +0 -56
  45. package/Executables/functions/len.js +0 -22
  46. package/Executables/functions/methods/array.js +0 -272
  47. package/Executables/functions/methods/string.js +0 -197
  48. package/Executables/functions/methods/twain.js +0 -148
  49. package/Executables/functions/op.js +0 -15
  50. package/Executables/functions/price_register.js +0 -30
  51. package/Executables/functions/pricing.js +0 -26
  52. package/Executables/functions/servers/account.js +0 -81
  53. package/Executables/functions/servers/account_register.js +0 -56
  54. package/Executables/functions/servers/block.js +0 -21
  55. package/Executables/functions/servers/block_register.js +0 -18
  56. package/Executables/functions/servers/chain.js +0 -42
  57. package/Executables/functions/servers/chain_register.js +0 -28
  58. package/Executables/functions/set_error_catch.js +0 -34
  59. package/Executables/functions/string_register.js +0 -130
  60. package/Executables/functions/twain_register.js +0 -56
  61. package/Executables/functions/typecast.js +0 -43
  62. package/Executables/functions/utils.js +0 -9
  63. package/Executables/stack.js +0 -53
  64. package/Loader_sequence/main.js +0 -805
  65. package/Loader_sequence/repository.js +0 -33
  66. package/Objects/Explorer.js +0 -40
  67. package/Objects/Fee.js +0 -33
  68. package/Objects/Filesystem.js +0 -216
  69. package/Objects/Frame.js +0 -54
  70. package/Objects/Opcodes.js +0 -87
  71. package/Objects/Protocol.js +0 -5
  72. package/Trinity.js +0 -20
  73. package/callables.js +0 -172
  74. package/framer.js +0 -124
  75. package/opcodes/add.js +0 -15
  76. package/opcodes/indices.js +0 -82
  77. package/opcodes/jmp.js +0 -16
  78. package/opcodes/std.js +0 -12
  79. package/opcodes.js +0 -96
  80. package/readme.md +0 -133
  81. package/starter_scripts/constants.seq +0 -11
  82. package/tsconfig.json +0 -8
  83. package/types/Account.d.ts +0 -73
  84. package/types/Block.d.ts +0 -22
  85. package/types/Blockweb.d.ts +0 -14
  86. package/types/Chain.d.ts +0 -35
  87. package/types/Explorer.d.ts +0 -9
  88. package/types/Filesystem.d.ts +0 -23
  89. package/types/Frame.d.ts +0 -14
  90. package/types/Manager.d.ts +0 -21
  91. package/types/Opcodes.d.ts +0 -11
  92. package/types/Oracle.d.ts +0 -17
  93. package/types/Virtual_machine.d.ts +0 -20
  94. package/types/index.d.ts +0 -4
  95. package/utils/hash.js +0 -13
  96. package/utils/logger.js +0 -79
  97. package/utils/privacy.js +0 -22
  98. package/utils/type_coersion.js +0 -3
@@ -1,29 +0,0 @@
1
- import { render } from "./render";
2
- import native_components, { natives } from "./native_components";
3
-
4
- const adm_register = (account)=>{
5
- let add_callable = account.vm.add_callable;
6
-
7
- add_callable('render', {
8
- callable:render,
9
- config: {
10
- parameters:[
11
- {name:'object', position:0}
12
- ]
13
- }
14
- })
15
-
16
- natives.map(name=>{
17
- add_callable(name, {
18
- callable:(args, vm, options)=>native_components(args, vm, {...options, name}),
19
- config: {
20
- parameters:[
21
- {name:'props', position:0}
22
- ]
23
- }
24
- })
25
- })
26
-
27
- }
28
-
29
- export default adm_register;
@@ -1,10 +0,0 @@
1
- let natives = ['Div', 'Text']
2
-
3
- const native_components = (args, vm, options)=>{
4
- let {props} = args;
5
-
6
- vm.write_chain(props, options.location)
7
- }
8
-
9
- export default native_components
10
- export {natives}
@@ -1,10 +0,0 @@
1
- const get_element = (args, vm, options)=>{
2
-
3
- }
4
-
5
- const set_element = (args, vm, options)=>{
6
-
7
- }
8
-
9
-
10
- export {get_element, set_element}
@@ -1,24 +0,0 @@
1
- const render = (args, vm, options) => {
2
- let {object, page} = args;
3
-
4
- if (!object.render){
5
- return vm.stderr({name:'Name_error', message:"A render method is neccessary for Adm display"})
6
- }
7
-
8
- let config = vm.read_chain(object.config)
9
- config = vm.display(config);
10
-
11
- console.log(config)
12
-
13
- vm.exec({executable: object.render, location: result=>{
14
- let raw = vm.display(result, {include_address:true})
15
-
16
- raw.address = object.__address__
17
- raw.page = page;
18
-
19
- vm.air_object(raw, options)
20
- }})
21
-
22
- }
23
-
24
- export {render}
@@ -1,161 +0,0 @@
1
- import { concat, repeat, slice, pop, index, clear, insert, replace, map, find, copy, filter } from "./methods/array";
2
-
3
- const array_register = (account)=>{
4
- let add_callable = account.vm.add_callable;
5
-
6
- add_callable('insert_', {
7
- callable: insert,
8
- config: {
9
- parameters: [
10
- {name:'arr', position:0},
11
- {name:'value', position:1},
12
- {name:'index', position:2},
13
- ]
14
- }
15
- })
16
-
17
- add_callable('arr_slice_', {
18
- callable: slice,
19
- config: {
20
- parameters: [
21
- {name:'arr', position:0},
22
- {name:'start', position:1},
23
- {name:'end', position:2},
24
- ]
25
- }
26
- })
27
-
28
- add_callable('arr_concat_', {
29
- callable: concat,
30
- config: {
31
- parameters: [
32
- {name:'arr', position:0},
33
- {name:'other', position:1},
34
- {name:'index', position:2},
35
- ]
36
- }
37
- })
38
-
39
- add_callable('extend_',{
40
- callable: (args, vm, options) => concat(args, vm, {...options, spread:true}),
41
- config: {
42
- parameters: [
43
- {name:'arr', position:0},
44
- {name:'other', position:1},
45
- {name:'index', position:2},
46
- ]
47
- }
48
- })
49
-
50
- add_callable('index_', {
51
- callable: index,
52
- config: {
53
- parameters: [
54
- {name:'arr', position:0},
55
- {name:'n', position:1},
56
- ]
57
- }
58
- })
59
-
60
- add_callable('pop_', {
61
- callable: pop,
62
- config: {
63
- parameters: [
64
- {name:'arr', position:0},
65
- {name:'index', position:1},
66
- ]
67
- }
68
- })
69
-
70
- add_callable('replace_', {
71
- callable: replace,
72
- config: {
73
- parameters: [
74
- {name:'arr', position:0},
75
- {name:'index', position:1},
76
- {name:'value', position:1},
77
- ]
78
- }
79
- })
80
-
81
-
82
- add_callable('repeat_', {
83
- callable: repeat,
84
- config: {
85
- parameters: [
86
- {name: 'arr', position:0},
87
- {name: 'n', position:1},
88
- ]
89
- }
90
- })
91
-
92
- add_callable('clear_', {
93
- callable: clear,
94
- config: {
95
- parameters: [
96
- {name: 'arr', position:0},
97
- ]
98
- }
99
- })
100
-
101
- add_callable('findindex_', {
102
- callable:(args, vm, options)=> find(args, vm, {...options, index: true}),
103
- config: {
104
- parameters: [
105
- {name: 'arr', position:0},
106
- {name: 'executable', position:1},
107
- ]
108
- }
109
- })
110
-
111
- add_callable('map_', {
112
- callable: map,
113
- config: {
114
- parameters: [
115
- {name: 'arr', position:0},
116
- {name: 'executable', position:1},
117
- ]
118
- }
119
- })
120
-
121
- add_callable('find_', {
122
- callable: find,
123
- config: {
124
- parameters: [
125
- {name: 'arr', position:0},
126
- {name: 'executable', position:1},
127
- ]
128
- }
129
- })
130
-
131
- add_callable('filter_', {
132
- callable: filter,
133
- config: {
134
- parameters: [
135
- {name:'arr', position:0},
136
- {name:'executable', position:1},
137
- ]
138
- }
139
- })
140
-
141
- add_callable('copy_', {
142
- callable: copy,
143
- config: {
144
- parameters: [
145
- {name:'arr', position:0},
146
- ]
147
- }
148
- })
149
-
150
- add_callable('deepcopy_', {
151
- callable: (args, vm, options)=>copy(args, vm, {...options, deep:true}),
152
- config: {
153
- parameters: [
154
- {name:'arr', position:0},
155
- {name:'depth', position:1},
156
- ]
157
- }
158
- })
159
- }
160
-
161
- export default array_register
@@ -1,19 +0,0 @@
1
- const assign = (args, vm, options)=>{
2
- let {location, arguments: argg} = options;
3
- let {value} = args;
4
-
5
- let value_addr = argg.argv[0].address;
6
- let value_chain = vm.handle_chain(value_addr);
7
-
8
- let loc_chain = vm.handle_chain(location)
9
- if(value_chain.datapath){
10
- loc_chain.set_obj_config(value_chain.datapath)
11
- }else {
12
-
13
- loc_chain.forge_block({metadata:{output: vm.account.save(value)}})
14
- loc_chain.set_obj_config('')
15
- }
16
- }
17
-
18
-
19
- export default assign
@@ -1,55 +0,0 @@
1
- const display = (args, vm, options) => {
2
- let { data } = args;
3
-
4
- // console.log(args, 'display.args')
5
- if (!Array.isArray(data)) data = [data];
6
-
7
-
8
- if (options.metadata && options.metadata.raw){
9
- return vm.display(vm.static_value(data[0]))
10
- }
11
-
12
- let val = new Array(data.length),
13
- d = 0;
14
-
15
- for (d = 0; d < data.length; d++) {
16
- let dat = data[d];
17
-
18
- if(!dat){continue}
19
- if (dat.static_value) {
20
- val[d] = dat.static_value;
21
- } else if (dat.__print__) {
22
- vm.exec({
23
- executable: dat.__print__,
24
- metadata: { index: d },
25
- location: (result, metadata) => {
26
- if (result.__print__) {
27
- result = vm.static_value(result, true);
28
- if (!result) {
29
- this.stderr({
30
- name: "Type_error",
31
- message: `class.__print__ must return one of type boolean | string | number | twain | array | void`,
32
- });
33
- }
34
- }
35
- val[metadata.index] = result;
36
-
37
- if (val.filter((v) => !!v).length === data.length) {
38
- vm.display(val)
39
- }
40
- },
41
- });
42
- } else {
43
- val[d] = JSON.stringify(dat);
44
- }
45
- }
46
-
47
- if (val.filter((v) => !!v).length === data.length) {
48
- vm.display(val)
49
- }
50
-
51
- if (options.metadata && options.metadata.raw)
52
- return JSON.parse(val[0])
53
- };
54
-
55
- export { display };
@@ -1,95 +0,0 @@
1
- const readone = (args, vm, options) =>{
2
- let {query} = args;
3
-
4
- let {fold} = clean_check_folder(args, vm)
5
-
6
- vm.display(query, (res)=>{
7
- vm.air_object(fold.readone(res), options)
8
- })
9
- }
10
-
11
- const read = (args, vm, options) =>{
12
- let {query} = args;
13
-
14
- let {fold} = clean_check_folder(args, vm)
15
-
16
- vm.display(query, (res)=>{
17
- vm.air_object(fold.read(res), options)
18
- })
19
- }
20
-
21
- const clean_check_folder = (args, vm)=>{
22
- let {folder}= args;
23
-
24
- let name = vm.read_chain(folder.name)
25
- if(name.__classifier__ !== vm.get_type_address('string')){
26
- return vm.stderr({name:'Type_error', message: "Folder name must be a string."})
27
- }else name = vm.static_value(name);
28
-
29
- let fold = vm.account.manager.oracle.gds.folder(name.static_value)
30
-
31
- return {name, fold}
32
- }
33
-
34
- const write = (args, vm, options) =>{
35
- let {data} = args;
36
-
37
- let {fold} = clean_check_folder(args, vm)
38
-
39
- vm.display(data, (res)=>{
40
- vm.air_object(fold.write(res), options)
41
- })
42
- }
43
-
44
- const write_several = (args, vm, options) =>{
45
- let {data} = args;
46
-
47
- let {fold} = clean_check_folder(args, vm)
48
-
49
- vm.display(data, (res)=>{
50
- vm.air_object(fold.write_several(res), options)
51
- })
52
- }
53
-
54
-
55
- const remove = (args, vm, options) =>{
56
- let {query} = args;
57
-
58
- let {fold} = clean_check_folder(args, vm)
59
-
60
- vm.display(query, (res)=>{
61
- vm.air_object(fold.remove(res), options)
62
- })
63
- }
64
-
65
- const remove_several = (args, vm, options) =>{
66
- let {query} = args;
67
-
68
- let {fold} = clean_check_folder(args, vm)
69
-
70
- vm.display(query, (res)=>{
71
- vm.air_object(fold.remove_several(res), options)
72
- })
73
- }
74
-
75
- const update = (args, vm, options) =>{
76
- let {query} = args;
77
-
78
- let {fold} = clean_check_folder(args, vm)
79
-
80
- vm.display(query, (res)=>{
81
- vm.air_object(fold.update(res), options)
82
- })
83
- }
84
-
85
- const update_several = (args, vm, options) =>{
86
- let {query} = args;
87
-
88
- let {fold} = clean_check_folder(args, vm)
89
-
90
- vm.display(query, (res)=>{
91
- vm.air_object(fold.update_several(res), options)
92
- })
93
- }
94
-
95
- export {read, readone, update, update_several, write, write_several, remove, remove_several}
@@ -1,87 +0,0 @@
1
- import { read, readone, remove, remove_several, update, update_several, write, write_several } from "./folder";
2
-
3
- const folder_register = (account)=>{
4
- let add_callable = account.vm.add_callable;
5
-
6
- add_callable('read_', {
7
- callable: read,
8
- config: {
9
- parameters: [
10
- {name:'folder', position:0},
11
- {name:'query', position:1},
12
- ]
13
- }
14
- })
15
-
16
- add_callable('readone_', {
17
- callable: readone,
18
- config: {
19
- parameters: [
20
- {name:'folder', position:0},
21
- {name:'query', position:1},
22
- ]
23
- }
24
- })
25
-
26
- add_callable('update_', {
27
- callable: update,
28
- config: {
29
- parameters: [
30
- {name:'folder', position:0},
31
- {name:'query', position:1},
32
- ]
33
- }
34
- })
35
-
36
- add_callable('update_several_', {
37
- callable: update_several,
38
- config: {
39
- parameters: [
40
- {name:'folder', position:0},
41
- {name:'query', position:1},
42
- ]
43
- }
44
- })
45
-
46
- add_callable('write_several_', {
47
- callable: write_several,
48
- config: {
49
- parameters: [
50
- {name:'folder', position:0},
51
- {name:'data', position:1},
52
- ]
53
- }
54
- })
55
-
56
- add_callable('write', {
57
- callable: write,
58
- config: {
59
- parameters: [
60
- {name:'folder', position:0},
61
- {name:'data', position:1},
62
- ]
63
- }
64
- })
65
-
66
- add_callable('remove_several_', {
67
- callable: remove_several,
68
- config: {
69
- parameters: [
70
- {name:'folder', position:0},
71
- {name:'query', position:1},
72
- ]
73
- }
74
- })
75
-
76
- add_callable('remove', {
77
- callable: remove,
78
- config: {
79
- parameters: [
80
- {name:'folder', position:0},
81
- {name:'query', position:1},
82
- ]
83
- }
84
- })
85
- }
86
-
87
- export default folder_register
@@ -1,13 +0,0 @@
1
- const importcheck = (args, vm)=>{
2
- console.log(args, 'importcheck.args')
3
- let {names} = args;
4
-
5
- if(!Array.isArray(names)) names = [names]
6
-
7
- for (let n=0; n< names.length; n++){
8
- let name = names[n]
9
-
10
- }
11
- }
12
-
13
- export default importcheck
@@ -1,56 +0,0 @@
1
-
2
-
3
- const get = (args, vm, options)=>{
4
- let{obj,prop}=args;
5
-
6
- // console.log(args, 'get args')
7
- if(!obj||!prop) return vm.stderr(`Invalid arguments in get.callable`)
8
-
9
- if (obj.__classifier__ === vm.get_type_address('twain')){
10
- let get_ = require('./methods/twain').get
11
- return get_({twain: obj, prop}, vm, options)
12
- }
13
- prop = vm.static_value(prop)
14
-
15
- if (prop.__print__){
16
- vm.exec({executable: prop.__print__, location: (prop)=>{
17
-
18
- if(!prop.static_value)return this.stderr({name:'Type_error', message: "get.callables"})
19
-
20
- let addr = obj[prop.static_value]
21
- let result = vm.read_chain(addr)
22
-
23
- vm.write_chain(result, options.location)
24
-
25
- }})
26
-
27
- return;
28
- }
29
-
30
- let static_prop = prop.static_value
31
- let addr = obj[static_prop]
32
- let result = vm.read_chain(addr)
33
-
34
- return {result, is_callable: !!(result.__address__ && vm.handle_chain(result.__address__).datapath)}
35
- }
36
-
37
- const set = (args, vm)=>{
38
- let {obj, prop, value} = args;
39
-
40
- // console.log(args, 'set args')
41
- if(!obj || !prop || !value) return vm.stderr(`Invalid arguments in set.callable`)
42
-
43
- prop = vm.static_value(prop)
44
-
45
- let static_prop = prop.static_value
46
- let val_addr = value.__address__
47
- obj[static_prop] = val_addr;
48
-
49
- vm.write_chain(obj, obj.__address__, {is_callable: !!vm.handle_chain(value.__address__).datapath})
50
-
51
- return {
52
- result: obj,
53
- }
54
- }
55
-
56
- export {get, set}
@@ -1,22 +0,0 @@
1
- const len = (args, vm, options) => {
2
- let {object} = args;
3
-
4
- if(![vm.get_type_address('string'),vm.get_type_address('array')].includes(object.__classifier__)){
5
- if (object.__len__){
6
- vm.exec({executable: object.__len__, location: result=>{
7
- if (result.__classifier__ !== vm.get_type_address('number')){
8
- return vm.stderr({name:'Type_error', message: `__len__ method should only return type of 'number'`})
9
- }
10
-
11
- vm.write_chain(result, options.location)
12
- }})
13
- }else return vm.air_object(null, options)
14
- }
15
-
16
- let statics = vm.static_value(object)
17
-
18
- vm.air_object(statics.static_value.length, options)
19
- }
20
-
21
-
22
- export default len