struct-frame 0.0.11__tar.gz
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.
Potentially problematic release.
This version of struct-frame might be problematic. Click here for more details.
- struct_frame-0.0.11/.gitignore +4 -0
- struct_frame-0.0.11/LICENSE +21 -0
- struct_frame-0.0.11/PKG-INFO +33 -0
- struct_frame-0.0.11/README.md +18 -0
- struct_frame-0.0.11/biostream.proto +41 -0
- struct_frame-0.0.11/index.ts +66 -0
- struct_frame-0.0.11/main.c +80 -0
- struct_frame-0.0.11/myl_vehicle.proto +47 -0
- struct_frame-0.0.11/package-lock.json +241 -0
- struct_frame-0.0.11/package.json +10 -0
- struct_frame-0.0.11/pyproject.toml +34 -0
- struct_frame-0.0.11/src/struct-frame/__init__.py +3 -0
- struct_frame-0.0.11/src/struct-frame/__main__.py +358 -0
- struct_frame-0.0.11/src/struct-frame/base.py +80 -0
- struct_frame-0.0.11/src/struct-frame/boilerplate/c/struct_frame.h +103 -0
- struct_frame-0.0.11/src/struct-frame/boilerplate/c/struct_frame_gen.h +2 -0
- struct_frame-0.0.11/src/struct-frame/boilerplate/c/struct_frame_parser.h +101 -0
- struct_frame-0.0.11/src/struct-frame/boilerplate/c/struct_frame_types.h +69 -0
- struct_frame-0.0.11/src/struct-frame/boilerplate/ts/struct_frame.ts +65 -0
- struct_frame-0.0.11/src/struct-frame/boilerplate/ts/struct_frame_gen.ts +7 -0
- struct_frame-0.0.11/src/struct-frame/boilerplate/ts/struct_frame_parser.ts +98 -0
- struct_frame-0.0.11/src/struct-frame/boilerplate/ts/struct_frame_types.ts +80 -0
- struct_frame-0.0.11/src/struct-frame/c_gen.py +184 -0
- struct_frame-0.0.11/src/struct-frame/ts_gen.py +186 -0
- struct_frame-0.0.11/tsconfig.json +111 -0
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2025 Rijesh Augustine
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: struct-frame
|
|
3
|
+
Version: 0.0.11
|
|
4
|
+
Summary: A framework for serializing data with headers
|
|
5
|
+
Project-URL: Homepage, https://github.com/mylonics/struct-frame
|
|
6
|
+
Project-URL: Issues, https://github.com/mylonics/struct-frame/issues
|
|
7
|
+
Author-email: Rijesh Augustine <rijesh@mylonics.com>
|
|
8
|
+
License-Expression: MIT
|
|
9
|
+
License-File: LICENSE
|
|
10
|
+
Classifier: Operating System :: OS Independent
|
|
11
|
+
Classifier: Programming Language :: Python :: 3
|
|
12
|
+
Requires-Python: >=3.8
|
|
13
|
+
Requires-Dist: proto-schema-parser>=1.4.5
|
|
14
|
+
Description-Content-Type: text/markdown
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
TS install
|
|
19
|
+
|
|
20
|
+
npm i -D typescript typed-struct @types/node
|
|
21
|
+
npx tsc --init
|
|
22
|
+
npx tsc index.ts
|
|
23
|
+
node index.js
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
npx tsc --project tsconfig.json; node index.js
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
building package
|
|
30
|
+
py -m build
|
|
31
|
+
py -m twine upload --repository testpypi dist/*
|
|
32
|
+
|
|
33
|
+
py -m pip install --upgrade twine
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
|
|
2
|
+
|
|
3
|
+
TS install
|
|
4
|
+
|
|
5
|
+
npm i -D typescript typed-struct @types/node
|
|
6
|
+
npx tsc --init
|
|
7
|
+
npx tsc index.ts
|
|
8
|
+
node index.js
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
npx tsc --project tsconfig.json; node index.js
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
building package
|
|
15
|
+
py -m build
|
|
16
|
+
py -m twine upload --repository testpypi dist/*
|
|
17
|
+
|
|
18
|
+
py -m pip install --upgrade twine
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
package biostream;
|
|
2
|
+
|
|
3
|
+
enum AdcSamplingFrequency {
|
|
4
|
+
FREQ_1000 = 0;
|
|
5
|
+
FREQ_2000 = 1;
|
|
6
|
+
FREQ_4000 = 2;
|
|
7
|
+
FREQ_8000 = 3;
|
|
8
|
+
FREQ_16000 = 4;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
//enum before comment
|
|
12
|
+
enum TransImpedanceGain {
|
|
13
|
+
R_10 = 0;
|
|
14
|
+
R_100 = 1;
|
|
15
|
+
R_1k = 2;
|
|
16
|
+
//Enum inside comment
|
|
17
|
+
R_10k = 3;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
message RawData {
|
|
22
|
+
option msgid = 1;
|
|
23
|
+
float refV = 1;
|
|
24
|
+
float drnC = 2;
|
|
25
|
+
float srcV = 3;
|
|
26
|
+
float drnV = 4;
|
|
27
|
+
float gteV = 5;
|
|
28
|
+
float phsV = 6;
|
|
29
|
+
float gteC = 7;
|
|
30
|
+
float temp = 8;
|
|
31
|
+
float time = 9;
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
message AdcCommand {
|
|
35
|
+
option msgid = 112;
|
|
36
|
+
bool enable = 1;
|
|
37
|
+
AdcSamplingFrequency sampligFreq= 2;
|
|
38
|
+
uint8 overSamplingRate = 3;
|
|
39
|
+
TransImpedanceGain drainRes = 4;
|
|
40
|
+
TransImpedanceGain gateRes = 5;
|
|
41
|
+
}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import * as mv from './ts/myl_vehicle.sf';
|
|
2
|
+
import { parse_char, parse_buffer } from './ts/struct_frame_parser';
|
|
3
|
+
import { struct_frame_buffer, buffer_parser_result_t, } from './ts/struct_frame_types';
|
|
4
|
+
import { type ExtractType } from 'typed-struct';
|
|
5
|
+
|
|
6
|
+
let tx_buffer = new struct_frame_buffer(256)
|
|
7
|
+
let rx_buffer = new struct_frame_buffer(256)
|
|
8
|
+
|
|
9
|
+
let msg = new mv.myl_vehicle_pose();
|
|
10
|
+
msg.pitch = 100;
|
|
11
|
+
msg.yaw_rate = -1.45;
|
|
12
|
+
msg.test = 4883;
|
|
13
|
+
mv.myl_vehicle_pose_encode(tx_buffer, msg);
|
|
14
|
+
|
|
15
|
+
let hb = new mv.myl_vehicle_heartbeat();
|
|
16
|
+
|
|
17
|
+
hb.id = 23;
|
|
18
|
+
hb.type = mv.myl_vehicle_VehicleType.myl_vehicle_VEHICLE_TYPE_FW;
|
|
19
|
+
mv.myl_vehicle_heartbeat_encode(tx_buffer, hb);
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
let msg2: ExtractType<typeof mv.myl_vehicle_pose>;
|
|
23
|
+
let hb3: ExtractType<typeof mv.myl_vehicle_heartbeat> | undefined;
|
|
24
|
+
for (let i = 0; i < tx_buffer.size; i++) {
|
|
25
|
+
if (parse_char(rx_buffer, tx_buffer.data[i])) {
|
|
26
|
+
switch (rx_buffer.msg_id_len.msg_id) {
|
|
27
|
+
case mv.myl_vehicle_heartbeat_msgid:
|
|
28
|
+
console.log("got hb msg with id %d", rx_buffer.msg_id_len.msg_id);
|
|
29
|
+
hb3 = new mv.myl_vehicle_heartbeat(rx_buffer.msg_data);
|
|
30
|
+
break;
|
|
31
|
+
case mv.myl_vehicle_pose_msgid:
|
|
32
|
+
console.log("got pose msg with id %d", rx_buffer.msg_id_len.msg_id);
|
|
33
|
+
msg2 = new mv.myl_vehicle_pose(rx_buffer.msg_data);
|
|
34
|
+
break;
|
|
35
|
+
|
|
36
|
+
default:
|
|
37
|
+
break;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
let msg3: ExtractType<typeof mv.myl_vehicle_pose>;
|
|
44
|
+
let hb5: ExtractType<typeof mv.myl_vehicle_heartbeat> | undefined;
|
|
45
|
+
|
|
46
|
+
let result: buffer_parser_result_t = new buffer_parser_result_t();
|
|
47
|
+
while (parse_buffer(tx_buffer.data, tx_buffer.max_size, result)) {
|
|
48
|
+
switch (result.msg_id_len.msg_id) {
|
|
49
|
+
case mv.myl_vehicle_heartbeat_msgid:
|
|
50
|
+
console.log("got hb msg with id %d", result.msg_id_len.msg_id);
|
|
51
|
+
hb5 = new mv.myl_vehicle_heartbeat(rx_buffer.msg_data);
|
|
52
|
+
break;
|
|
53
|
+
case mv.myl_vehicle_pose_msgid:
|
|
54
|
+
console.log("got pose msg with id %d", result.msg_id_len.msg_id);
|
|
55
|
+
msg3 = new mv.myl_vehicle_pose(rx_buffer.msg_data);
|
|
56
|
+
break;
|
|
57
|
+
|
|
58
|
+
default:
|
|
59
|
+
break;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
if (hb && hb3 && hb5) {
|
|
64
|
+
console.log("%d %d %d %d", hb.id, hb.type, hb3.id, hb3.type, hb5.id, hb5.type);
|
|
65
|
+
}
|
|
66
|
+
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
#include <stdio.h>
|
|
2
|
+
#include "c/struct_frame_gen.h"
|
|
3
|
+
|
|
4
|
+
#include "c/struct_frame_parser.h"
|
|
5
|
+
|
|
6
|
+
// CREATE_DEFAULT_STRUCT_BUFFER(tx_buffer, 256);
|
|
7
|
+
uint8_t tx_buffer_buffer[256];
|
|
8
|
+
struct_buffer tx_buffer = {default_parser, tx_buffer_buffer, 256, 0, 0, false, 0, 0, 0};
|
|
9
|
+
|
|
10
|
+
// CREATE_DEFAULT_STRUCT_BUFFER(rx_buffer, 256);
|
|
11
|
+
uint8_t rx_buffer_buffer[256];
|
|
12
|
+
struct_buffer rx_buffer = {default_parser, rx_buffer_buffer, 256, 0, 0, false, 0, 0, 0};
|
|
13
|
+
|
|
14
|
+
int main()
|
|
15
|
+
{
|
|
16
|
+
MylVehiclePose msg;
|
|
17
|
+
msg.pitch = 100;
|
|
18
|
+
msg.yaw_rate = -1.45;
|
|
19
|
+
msg.test = 4883;
|
|
20
|
+
myl_vehicle_pose_encode(&tx_buffer, &msg);
|
|
21
|
+
|
|
22
|
+
MylVehicleHeartbeat *hb;
|
|
23
|
+
if (myl_vehicle_heartbeat_reserve(&tx_buffer, &hb))
|
|
24
|
+
{
|
|
25
|
+
hb->id = 23;
|
|
26
|
+
hb->type = VEHICLE_TYPE_VEHICLE_TYPE_FW;
|
|
27
|
+
myl_vehicle_heartbeat_finish(&tx_buffer);
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
MylVehiclePose msg2;
|
|
31
|
+
MylVehicleHeartbeat *hb2;
|
|
32
|
+
MylVehicleHeartbeat hb3;
|
|
33
|
+
for (int i = 0; i < tx_buffer.size; i++)
|
|
34
|
+
{
|
|
35
|
+
if (parse_char(&rx_buffer, tx_buffer.data[i]))
|
|
36
|
+
{
|
|
37
|
+
switch (rx_buffer.msg_id_len.msg_id)
|
|
38
|
+
{
|
|
39
|
+
case MYL_VEHICLE_HEARTBEAT_MSG_ID:
|
|
40
|
+
printf("got hb msg with id %d\n", rx_buffer.msg_id_len.msg_id);
|
|
41
|
+
hb2 = myl_vehicle_heartbeat_get_ref(&rx_buffer);
|
|
42
|
+
hb3 = myl_vehicle_heartbeat_get(&rx_buffer);
|
|
43
|
+
break;
|
|
44
|
+
case MYL_VEHICLE_POSE_MSG_ID:
|
|
45
|
+
printf("got pose msg with id %d\n", rx_buffer.msg_id_len.msg_id);
|
|
46
|
+
msg2 = myl_vehicle_pose_get(&rx_buffer);
|
|
47
|
+
break;
|
|
48
|
+
|
|
49
|
+
default:
|
|
50
|
+
break;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
MylVehiclePose msg3;
|
|
56
|
+
MylVehicleHeartbeat *hb4;
|
|
57
|
+
MylVehicleHeartbeat hb5;
|
|
58
|
+
buffer_parser_result_t result = zero_initialized_parser_result;
|
|
59
|
+
while (parse_buffer(tx_buffer_buffer, 256, &result))
|
|
60
|
+
{
|
|
61
|
+
switch (result.msg_id_len.msg_id)
|
|
62
|
+
{
|
|
63
|
+
case MYL_VEHICLE_HEARTBEAT_MSG_ID:
|
|
64
|
+
printf("got hb msg with id %d\n", result.msg_id_len.msg_id);
|
|
65
|
+
hb4 = myl_vehicle_heartbeat_get_ref_from_buffer_result(result);
|
|
66
|
+
hb5 = myl_vehicle_heartbeat_get_from_buffer_result(result);
|
|
67
|
+
break;
|
|
68
|
+
case MYL_VEHICLE_POSE_MSG_ID:
|
|
69
|
+
printf("got pose msg with id %d\n", result.msg_id_len.msg_id);
|
|
70
|
+
msg3 = myl_vehicle_pose_get_from_buffer_result(result);
|
|
71
|
+
break;
|
|
72
|
+
|
|
73
|
+
default:
|
|
74
|
+
break;
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
printf("%d %d %d %d", hb->id, hb->type, hb2->id,hb2->type);
|
|
78
|
+
|
|
79
|
+
return 0;
|
|
80
|
+
}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
syntax = "proto3";
|
|
2
|
+
import "nanopb.proto";
|
|
3
|
+
package myl_vehicle;
|
|
4
|
+
|
|
5
|
+
enum VehicleType {
|
|
6
|
+
VEHICLE_TYPE_UNSPECIFIED = 0;
|
|
7
|
+
VEHICLE_TYPE_ROVER = 1;
|
|
8
|
+
VEHICLE_TYPE_BOAT = 2;
|
|
9
|
+
VEHICLE_TYPE_FW = 3;
|
|
10
|
+
VEHICLE_TYPE_MR = 4;
|
|
11
|
+
VEHICLE_TYPE_CAR = 5;
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
message position {
|
|
15
|
+
option msgid = 1;
|
|
16
|
+
double lat = 1;
|
|
17
|
+
double lon = 2;
|
|
18
|
+
float alt = 3;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
//Used for sending robot pose
|
|
22
|
+
message pose {
|
|
23
|
+
option msgid = 2;
|
|
24
|
+
//Used for sending roll
|
|
25
|
+
float roll = 1;
|
|
26
|
+
|
|
27
|
+
// Used for sending pitch
|
|
28
|
+
float pitch = 2;
|
|
29
|
+
float yaw = 3;
|
|
30
|
+
float roll_rate = 4;
|
|
31
|
+
float pitch_rate = 5;
|
|
32
|
+
float yaw_rate = 6;
|
|
33
|
+
int16 test = 7;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
message heartbeat {
|
|
37
|
+
option msgid = 3;
|
|
38
|
+
VehicleType type = 1;
|
|
39
|
+
int32 id = 2;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
message heartbeat2 {
|
|
43
|
+
option msgid = 4;
|
|
44
|
+
float test = 1;
|
|
45
|
+
int32 id3 = 2;
|
|
46
|
+
}
|
|
47
|
+
|
|
@@ -0,0 +1,241 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "custom-messaging",
|
|
3
|
+
"lockfileVersion": 3,
|
|
4
|
+
"requires": true,
|
|
5
|
+
"packages": {
|
|
6
|
+
"": {
|
|
7
|
+
"dependencies": {
|
|
8
|
+
"ts-node": "^10.9.2"
|
|
9
|
+
},
|
|
10
|
+
"devDependencies": {
|
|
11
|
+
"@types/node": "^22.10.7",
|
|
12
|
+
"typed-struct": "^2.5.2",
|
|
13
|
+
"typescript": "^5.7.3"
|
|
14
|
+
}
|
|
15
|
+
},
|
|
16
|
+
"node_modules/@cspotcode/source-map-support": {
|
|
17
|
+
"version": "0.8.1",
|
|
18
|
+
"resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz",
|
|
19
|
+
"integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==",
|
|
20
|
+
"license": "MIT",
|
|
21
|
+
"dependencies": {
|
|
22
|
+
"@jridgewell/trace-mapping": "0.3.9"
|
|
23
|
+
},
|
|
24
|
+
"engines": {
|
|
25
|
+
"node": ">=12"
|
|
26
|
+
}
|
|
27
|
+
},
|
|
28
|
+
"node_modules/@jridgewell/resolve-uri": {
|
|
29
|
+
"version": "3.1.2",
|
|
30
|
+
"resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz",
|
|
31
|
+
"integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==",
|
|
32
|
+
"license": "MIT",
|
|
33
|
+
"engines": {
|
|
34
|
+
"node": ">=6.0.0"
|
|
35
|
+
}
|
|
36
|
+
},
|
|
37
|
+
"node_modules/@jridgewell/sourcemap-codec": {
|
|
38
|
+
"version": "1.5.0",
|
|
39
|
+
"resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz",
|
|
40
|
+
"integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==",
|
|
41
|
+
"license": "MIT"
|
|
42
|
+
},
|
|
43
|
+
"node_modules/@jridgewell/trace-mapping": {
|
|
44
|
+
"version": "0.3.9",
|
|
45
|
+
"resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz",
|
|
46
|
+
"integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==",
|
|
47
|
+
"license": "MIT",
|
|
48
|
+
"dependencies": {
|
|
49
|
+
"@jridgewell/resolve-uri": "^3.0.3",
|
|
50
|
+
"@jridgewell/sourcemap-codec": "^1.4.10"
|
|
51
|
+
}
|
|
52
|
+
},
|
|
53
|
+
"node_modules/@tsconfig/node10": {
|
|
54
|
+
"version": "1.0.11",
|
|
55
|
+
"resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.11.tgz",
|
|
56
|
+
"integrity": "sha512-DcRjDCujK/kCk/cUe8Xz8ZSpm8mS3mNNpta+jGCA6USEDfktlNvm1+IuZ9eTcDbNk41BHwpHHeW+N1lKCz4zOw==",
|
|
57
|
+
"license": "MIT"
|
|
58
|
+
},
|
|
59
|
+
"node_modules/@tsconfig/node12": {
|
|
60
|
+
"version": "1.0.11",
|
|
61
|
+
"resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz",
|
|
62
|
+
"integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==",
|
|
63
|
+
"license": "MIT"
|
|
64
|
+
},
|
|
65
|
+
"node_modules/@tsconfig/node14": {
|
|
66
|
+
"version": "1.0.3",
|
|
67
|
+
"resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz",
|
|
68
|
+
"integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==",
|
|
69
|
+
"license": "MIT"
|
|
70
|
+
},
|
|
71
|
+
"node_modules/@tsconfig/node16": {
|
|
72
|
+
"version": "1.0.4",
|
|
73
|
+
"resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.4.tgz",
|
|
74
|
+
"integrity": "sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==",
|
|
75
|
+
"license": "MIT"
|
|
76
|
+
},
|
|
77
|
+
"node_modules/@types/node": {
|
|
78
|
+
"version": "22.10.7",
|
|
79
|
+
"resolved": "https://registry.npmjs.org/@types/node/-/node-22.10.7.tgz",
|
|
80
|
+
"integrity": "sha512-V09KvXxFiutGp6B7XkpaDXlNadZxrzajcY50EuoLIpQ6WWYCSvf19lVIazzfIzQvhUN2HjX12spLojTnhuKlGg==",
|
|
81
|
+
"license": "MIT",
|
|
82
|
+
"dependencies": {
|
|
83
|
+
"undici-types": "~6.20.0"
|
|
84
|
+
}
|
|
85
|
+
},
|
|
86
|
+
"node_modules/acorn": {
|
|
87
|
+
"version": "8.14.0",
|
|
88
|
+
"resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.0.tgz",
|
|
89
|
+
"integrity": "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==",
|
|
90
|
+
"license": "MIT",
|
|
91
|
+
"bin": {
|
|
92
|
+
"acorn": "bin/acorn"
|
|
93
|
+
},
|
|
94
|
+
"engines": {
|
|
95
|
+
"node": ">=0.4.0"
|
|
96
|
+
}
|
|
97
|
+
},
|
|
98
|
+
"node_modules/acorn-walk": {
|
|
99
|
+
"version": "8.3.4",
|
|
100
|
+
"resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.4.tgz",
|
|
101
|
+
"integrity": "sha512-ueEepnujpqee2o5aIYnvHU6C0A42MNdsIDeqy5BydrkuC5R1ZuUFnm27EeFJGoEHJQgn3uleRvmTXaJgfXbt4g==",
|
|
102
|
+
"license": "MIT",
|
|
103
|
+
"dependencies": {
|
|
104
|
+
"acorn": "^8.11.0"
|
|
105
|
+
},
|
|
106
|
+
"engines": {
|
|
107
|
+
"node": ">=0.4.0"
|
|
108
|
+
}
|
|
109
|
+
},
|
|
110
|
+
"node_modules/arg": {
|
|
111
|
+
"version": "4.1.3",
|
|
112
|
+
"resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz",
|
|
113
|
+
"integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==",
|
|
114
|
+
"license": "MIT"
|
|
115
|
+
},
|
|
116
|
+
"node_modules/create-require": {
|
|
117
|
+
"version": "1.1.1",
|
|
118
|
+
"resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz",
|
|
119
|
+
"integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==",
|
|
120
|
+
"license": "MIT"
|
|
121
|
+
},
|
|
122
|
+
"node_modules/diff": {
|
|
123
|
+
"version": "4.0.2",
|
|
124
|
+
"resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz",
|
|
125
|
+
"integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==",
|
|
126
|
+
"license": "BSD-3-Clause",
|
|
127
|
+
"engines": {
|
|
128
|
+
"node": ">=0.3.1"
|
|
129
|
+
}
|
|
130
|
+
},
|
|
131
|
+
"node_modules/make-error": {
|
|
132
|
+
"version": "1.3.6",
|
|
133
|
+
"resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz",
|
|
134
|
+
"integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==",
|
|
135
|
+
"license": "ISC"
|
|
136
|
+
},
|
|
137
|
+
"node_modules/ts-node": {
|
|
138
|
+
"version": "10.9.2",
|
|
139
|
+
"resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.2.tgz",
|
|
140
|
+
"integrity": "sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==",
|
|
141
|
+
"license": "MIT",
|
|
142
|
+
"dependencies": {
|
|
143
|
+
"@cspotcode/source-map-support": "^0.8.0",
|
|
144
|
+
"@tsconfig/node10": "^1.0.7",
|
|
145
|
+
"@tsconfig/node12": "^1.0.7",
|
|
146
|
+
"@tsconfig/node14": "^1.0.0",
|
|
147
|
+
"@tsconfig/node16": "^1.0.2",
|
|
148
|
+
"acorn": "^8.4.1",
|
|
149
|
+
"acorn-walk": "^8.1.1",
|
|
150
|
+
"arg": "^4.1.0",
|
|
151
|
+
"create-require": "^1.1.0",
|
|
152
|
+
"diff": "^4.0.1",
|
|
153
|
+
"make-error": "^1.1.1",
|
|
154
|
+
"v8-compile-cache-lib": "^3.0.1",
|
|
155
|
+
"yn": "3.1.1"
|
|
156
|
+
},
|
|
157
|
+
"bin": {
|
|
158
|
+
"ts-node": "dist/bin.js",
|
|
159
|
+
"ts-node-cwd": "dist/bin-cwd.js",
|
|
160
|
+
"ts-node-esm": "dist/bin-esm.js",
|
|
161
|
+
"ts-node-script": "dist/bin-script.js",
|
|
162
|
+
"ts-node-transpile-only": "dist/bin-transpile.js",
|
|
163
|
+
"ts-script": "dist/bin-script-deprecated.js"
|
|
164
|
+
},
|
|
165
|
+
"peerDependencies": {
|
|
166
|
+
"@swc/core": ">=1.2.50",
|
|
167
|
+
"@swc/wasm": ">=1.2.50",
|
|
168
|
+
"@types/node": "*",
|
|
169
|
+
"typescript": ">=2.7"
|
|
170
|
+
},
|
|
171
|
+
"peerDependenciesMeta": {
|
|
172
|
+
"@swc/core": {
|
|
173
|
+
"optional": true
|
|
174
|
+
},
|
|
175
|
+
"@swc/wasm": {
|
|
176
|
+
"optional": true
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
},
|
|
180
|
+
"node_modules/typed-struct": {
|
|
181
|
+
"version": "2.5.2",
|
|
182
|
+
"resolved": "https://registry.npmjs.org/typed-struct/-/typed-struct-2.5.2.tgz",
|
|
183
|
+
"integrity": "sha512-T49/nUUkbusHwSHWxGOODAMjCkbdveVS0J9kKJfW+zx2puqP/20IMzkiqymfhzvHCTcaPeb8rat1Lvv+I/c1kA==",
|
|
184
|
+
"dev": true,
|
|
185
|
+
"license": "MIT",
|
|
186
|
+
"engines": {
|
|
187
|
+
"node": ">=12"
|
|
188
|
+
},
|
|
189
|
+
"peerDependencies": {
|
|
190
|
+
"buffer": "^6.0.3",
|
|
191
|
+
"debug": "^4.3.3",
|
|
192
|
+
"iconv-lite": "^0.6.3"
|
|
193
|
+
},
|
|
194
|
+
"peerDependenciesMeta": {
|
|
195
|
+
"buffer": {
|
|
196
|
+
"optional": true
|
|
197
|
+
},
|
|
198
|
+
"debug": {
|
|
199
|
+
"optional": true
|
|
200
|
+
},
|
|
201
|
+
"iconv-lite": {
|
|
202
|
+
"optional": true
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
},
|
|
206
|
+
"node_modules/typescript": {
|
|
207
|
+
"version": "5.7.3",
|
|
208
|
+
"resolved": "https://registry.npmjs.org/typescript/-/typescript-5.7.3.tgz",
|
|
209
|
+
"integrity": "sha512-84MVSjMEHP+FQRPy3pX9sTVV/INIex71s9TL2Gm5FG/WG1SqXeKyZ0k7/blY/4FdOzI12CBy1vGc4og/eus0fw==",
|
|
210
|
+
"license": "Apache-2.0",
|
|
211
|
+
"bin": {
|
|
212
|
+
"tsc": "bin/tsc",
|
|
213
|
+
"tsserver": "bin/tsserver"
|
|
214
|
+
},
|
|
215
|
+
"engines": {
|
|
216
|
+
"node": ">=14.17"
|
|
217
|
+
}
|
|
218
|
+
},
|
|
219
|
+
"node_modules/undici-types": {
|
|
220
|
+
"version": "6.20.0",
|
|
221
|
+
"resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.20.0.tgz",
|
|
222
|
+
"integrity": "sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg==",
|
|
223
|
+
"license": "MIT"
|
|
224
|
+
},
|
|
225
|
+
"node_modules/v8-compile-cache-lib": {
|
|
226
|
+
"version": "3.0.1",
|
|
227
|
+
"resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz",
|
|
228
|
+
"integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==",
|
|
229
|
+
"license": "MIT"
|
|
230
|
+
},
|
|
231
|
+
"node_modules/yn": {
|
|
232
|
+
"version": "3.1.1",
|
|
233
|
+
"resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz",
|
|
234
|
+
"integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==",
|
|
235
|
+
"license": "MIT",
|
|
236
|
+
"engines": {
|
|
237
|
+
"node": ">=6"
|
|
238
|
+
}
|
|
239
|
+
}
|
|
240
|
+
}
|
|
241
|
+
}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
[build-system]
|
|
2
|
+
requires = ["hatchling"]
|
|
3
|
+
build-backend = "hatchling.build"
|
|
4
|
+
|
|
5
|
+
[project]
|
|
6
|
+
name = "struct-frame"
|
|
7
|
+
version = "0.0.11"
|
|
8
|
+
authors = [
|
|
9
|
+
{ name="Rijesh Augustine", email="rijesh@mylonics.com" },
|
|
10
|
+
]
|
|
11
|
+
dependencies = [
|
|
12
|
+
"proto-schema-parser>=1.4.5",
|
|
13
|
+
]
|
|
14
|
+
description = "A framework for serializing data with headers"
|
|
15
|
+
readme = "README.md"
|
|
16
|
+
requires-python = ">=3.8"
|
|
17
|
+
classifiers = [
|
|
18
|
+
"Programming Language :: Python :: 3",
|
|
19
|
+
"Operating System :: OS Independent",
|
|
20
|
+
]
|
|
21
|
+
license = "MIT"
|
|
22
|
+
license-files = ["LICEN[CS]E*"]
|
|
23
|
+
|
|
24
|
+
[project.urls]
|
|
25
|
+
Homepage = "https://github.com/mylonics/struct-frame"
|
|
26
|
+
Issues = "https://github.com/mylonics/struct-frame/issues"
|
|
27
|
+
|
|
28
|
+
|
|
29
|
+
[tool.hatch.build.targets.wheel]
|
|
30
|
+
only-include = ["src/struct-frame"]
|
|
31
|
+
|
|
32
|
+
[tool.hatch.build.targets.wheel.sources]
|
|
33
|
+
"src" = ""
|
|
34
|
+
"boilerplate" = "src/struct-frame/boilerplate"
|