feat(users/Profpatsch/netencode): add dec::RecordDot

`dec::RecordDot` accesses a specific field of a netencode record.

In order to implement this, either we’d have to introduce a type-level
string, but in all honesty this kind of typelevel circlejerking never
leads anywhere, so let’s change the trait to use `&self` after all.
Usage is pretty much the same, except actually more like you’d expect.

Change-Id: I5a7f1a3f587256c50df1b65c2969e5a7194bba70
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2494
Tested-by: BuildkiteCI
Reviewed-by: Profpatsch <mail@profpatsch.de>
This commit is contained in:
Profpatsch 2021-02-07 19:06:51 +01:00
parent 3226e6243f
commit 7d9c30ab3d
2 changed files with 29 additions and 6 deletions

View file

@ -108,7 +108,7 @@ let
let mut buf = vec![];
let u = netencode::u_from_stdin_or_die_user_error("record-splice-env", &mut buf);
let (_, prog) = exec_helpers::args_for_exec("record-splice-env", 0);
match Record::<ScalarAsBytes>::dec(u) {
match Record(ScalarAsBytes).dec(u) {
Ok(map) => {
exec_helpers::exec_into_args("record-splice-env", prog, map);
},