risor-io / risor

Fast and flexible scripting for Go developers and DevOps.
https://risor.io
Apache License 2.0
576 stars 24 forks source link

Disassembler for inspecting compiled Risor code #202

Closed myzie closed 4 months ago

myzie commented 4 months ago

Adds a disassembler package and Risor CLI command to inspect compiled Risor code.

For example:

risor dis -c "1 + 2"
+--------+------------+----------+------+
| OFFSET |   OPCODE   | OPERANDS | INFO |
+--------+------------+----------+------+
|      0 | LOAD_CONST |        0 | 1    |
|      2 | LOAD_CONST |        1 | 2    |
|      4 | BINARY_OP  |        1 | +    |
+--------+------------+----------+------+

Other supporting changes:

codecov[bot] commented 4 months ago

Codecov Report

Attention: Patch coverage is 29.83294% with 294 lines in your changes are missing coverage. Please review.

Project coverage is 31.44%. Comparing base (a897b5c) to head (29f05fc).

Files Patch % Lines
cmd/risor/util.go 0.86% 112 Missing and 2 partials :warning:
dis/dis.go 55.85% 45 Missing and 4 partials :warning:
op/op.go 9.80% 46 Missing :warning:
cmd/risor/options.go 50.87% 18 Missing and 10 partials :warning:
cmd/risor/root.go 18.51% 22 Missing :warning:
cmd/risor/dis.go 41.66% 16 Missing and 5 partials :warning:
cmd/risor/version.go 38.09% 13 Missing :warning:
cmd/risor/main.go 0.00% 1 Missing :warning:
Additional details and impacted files ```diff @@ Coverage Diff @@ ## main #202 +/- ## ========================================== - Coverage 31.52% 31.44% -0.09% ========================================== Files 113 121 +8 Lines 14461 15103 +642 ========================================== + Hits 4559 4749 +190 - Misses 9331 9763 +432 - Partials 571 591 +20 ```

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.