Mattias Wadman
06245d1295
binary,decode,doc: Rename buffer to binary and add some documentation
...
Rename buffer to binary. Still some work left what to call buffer/binary in decode code.
Document decode value and binary type
Fix proper unit padding for tobytes and add still undocumenated extra padding argument.
Add some additional binary tests
2022-02-08 22:20:28 +01:00
Mattias Wadman
7c5215347d
bitio,decode: Refactor bitio usage and make buffer slicing more correct
...
Remove bitio.Buffer layer. bitio.Buffer was a kitchen sink layer with helpers
now it's just a buffer and most functions have been moved to decode instead.
bitio package now only have primitive types and functions simialar to standard
library io and bytes packages.
Make nearly eveything internally use bitio.Bit* interfaces so that slicing work
correctly this will also make it possible to start experimenting with more
complicated silcing helpers, ex things like:
breplace(.header.bitrate; 123) to get a new buffer with bitrate changed.
2022-02-04 21:41:53 +01:00
Mattias Wadman
01a407a462
interp: Rename s/bufferrange/buffer and cleanup
2021-11-30 21:10:26 +01:00
Mattias Wadman
4eccb1ee71
interp: Fix broken aes_ctr, should return buffer instead of []byte
2021-11-30 15:30:34 +01:00
Mattias Wadman
69e4eea920
interp: Better error if format/group is not found
2021-11-22 13:28:18 +01:00
Mattias Wadman
986d5ecc50
decode: Move registry package to decode/registry and add a format group type
2021-11-17 16:59:56 +01:00
Mattias Wadman
5cd5633374
interp: Move jq function impls closer to where they belong
2021-11-16 11:43:11 +01:00
Mattias Wadman
6a15625587
interp,decode: Refactor out Scalar from Value and merge Array/Struct into Compound
...
Also add tosym, toactual
2021-11-05 17:29:22 +01:00
Mattias Wadman
6cacc9b398
interp: Move *CtxWriter to ioextra, some comments cleanup
2021-11-05 17:28:29 +01:00
Mattias Wadman
ff2077bc0f
interp: Simplify Function, aliases done in jq now
2021-11-05 17:28:29 +01:00
Mattias Wadman
93322bc434
interp: Implement format/0 in jq
2021-11-03 10:58:33 +01:00
Mattias Wadman
96cc1283cd
interp: Eval options in jq instead of calling jq from go
...
Simpler and causes less weird performance issues
2021-11-01 17:05:36 +01:00
Mattias Wadman
67898cb44a
interp: Cleanup, use BufferRange for _open, progress for all decode
2021-10-30 01:17:14 +02:00
Mattias Wadman
97f7317928
interp: Rework repl prompt code and fix some whitespace issues again
2021-10-28 12:08:19 +02:00
Mattias Wadman
2e964fa44f
interp: Disable progress after decode is done
...
Otherwise reading might cause progress output
2021-10-25 11:11:26 +02:00
Mattias Wadman
95ec5e1077
Cleanup and rename s/BufferView/BufferRange
2021-10-21 00:48:30 +02:00
Mattias Wadman
eedfd16b40
interp: Replace find with overloaded match that support buffer
2021-10-20 21:16:13 +02:00
Mattias Wadman
5052bae18e
decode,interp: Refactor to allow decode/fillgap a range
2021-10-19 14:38:11 +02:00
Mattias Wadman
16d1f45de1
interp: find buffer should always use ByteRuneReader
...
Fixes grep and bgrep with buffer
2021-10-18 01:34:05 +02:00
Mattias Wadman
36fd74a181
Add comment how raw byte regexp matching works
2021-10-17 14:48:50 +02:00
Mattias Wadman
7f36f703dd
Add to/bytes/bits[range]
2021-10-17 14:43:37 +02:00
Mattias Wadman
7298a4cd8d
interp: Add buffer match support to find and grep
2021-10-17 01:26:30 +02:00
Mattias Wadman
e86b45bd1a
Add *grep/1/2 and find/1/2
2021-10-13 01:27:04 +02:00
Mattias Wadman
1c3c65b191
interp: Rework buffer, still confusing
2021-10-05 22:26:05 +02:00
Mattias Wadman
b641c77216
interp: Cleanup unfinished/broken preview
2021-10-02 20:42:11 +02:00
Mattias Wadman
aa38ccf0e1
format,interp: Use MustGroup and add probe order test
2021-09-28 13:08:22 +02:00
Mattias Wadman
618c1ea79f
interp: Refactor/Rename BufferView
...
TODO: fix bit level dump again
2021-09-28 01:46:32 +02:00
Mattias Wadman
567bc4b342
interp: Rename to* funcs to match
2021-09-27 23:03:53 +02:00
Mattias Wadman
3ff0c9b5e0
lint: Enable errcheck adnd revive
2021-09-27 11:01:14 +02:00
Mattias Wadman
528e6b91ab
interp: Refactor and use mapstructure
2021-09-22 01:35:27 +02:00
Mattias Wadman
3e7e133047
interp: Move formats func def to jq
2021-09-21 16:42:35 +02:00
Mattias Wadman
976e992c31
interp: Move progress logic to jq
2021-09-20 17:47:40 +02:00
Mattias Wadman
1fe5d95307
interp: Some better naming and typos
2021-09-18 10:47:43 +02:00
Mattias Wadman
6ee7977c53
decode,format: Allow root array
2021-09-16 16:27:47 +02:00
Mattias Wadman
26d615b852
decode: Move name/description into DecodeOptions
2021-09-16 14:42:32 +02:00
Mattias Wadman
c7416e6dcb
decode, interp: More buffer reuse
2021-09-16 12:24:53 +02:00
Mattias Wadman
6207fcc8f0
decode: Pass context to be able to cancel properly
2021-09-16 10:32:29 +02:00
Mattias Wadman
7423f450ef
interp: Cleanup output types
2021-09-12 13:08:56 +02:00
Mattias Wadman
c9777aaded
repl: completion in jq
2021-09-12 13:08:56 +02:00
Mattias Wadman
a49e924d5f
decode: Use golang.org/x/text for text decoding
2021-09-12 13:08:55 +02:00
Mattias Wadman
8cb380e7d9
fq: Generate decode alises code
2021-09-12 13:08:55 +02:00
Mattias Wadman
834f4a5893
fq: use jq functions for all display alises
2021-09-12 13:08:55 +02:00
Mattias Wadman
1d0ebb55e4
repl: Handle directives, add tests
2021-09-12 13:08:55 +02:00
Mattias Wadman
49f541c317
cli: Add proper repl iterator support
2021-09-12 13:08:54 +02:00
Mattias Wadman
6356a84f15
cli: Add --raw-string
2021-09-12 13:08:54 +02:00
Mattias Wadman
b849895970
fq: Add truncate array support to dump/display
2021-09-12 13:08:53 +02:00
Mattias Wadman
dfcefc1b55
fq: Make format/0 native for performance
2021-09-12 13:08:53 +02:00
Mattias Wadman
08ec4f0eeb
funcs: Remove unsued string function
2021-09-12 13:08:53 +02:00
Mattias Wadman
d23edaa4a5
fq: Rename bits/0 bytes/0 to tobits tobytes, remove string/0
2021-09-12 13:08:53 +02:00
Mattias Wadman
0dd848de6c
cli: Better filenames in errors
2021-09-12 13:08:51 +02:00