MCPcopy Create free account
hub / github.com/ccxt/ccxt / _encode

Function _encode

ts/src/static_dependencies/ethers/utils/rlp-encode.ts:17–50  ·  view source on GitHub ↗
(object: Array<any> | string | Uint8Array)

Source from the content-addressed store, hash-verified

15}
16
17function _encode(object: Array<any> | string | Uint8Array): Array<number> {
18 if (Array.isArray(object)) {
19 let payload: Array<number> = [];
20 object.forEach(function(child) {
21 payload = payload.concat(_encode(child));
22 });
23
24 if (payload.length <= 55) {
25 payload.unshift(0xc0 + payload.length)
26 return payload;
27 }
28
29 const length = arrayifyInteger(payload.length);
30 length.unshift(0xf7 + length.length);
31
32 return length.concat(payload);
33
34 }
35
36 const data: Array<number> = Array.prototype.slice.call(getBytes(object, "object"));
37
38 if (data.length === 1 && data[0] <= 0x7f) {
39 return data;
40
41 } else if (data.length <= 55) {
42 data.unshift(0x80 + data.length);
43 return data;
44 }
45
46 const length = arrayifyInteger(data.length);
47 length.unshift(0xb7 + length.length);
48
49 return length.concat(data);
50}
51
52const nibbles = "0123456789abcdef";
53

Callers 1

encodeRlpFunction · 0.70

Calls 6

getBytesFunction · 0.90
callMethod · 0.80
arrayifyIntegerFunction · 0.70
isArrayMethod · 0.45
forEachMethod · 0.45
concatMethod · 0.45

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…