snix/tvix/eval/src/value
Ryan Lahfa 3e63d7be42 feat(tvix/eval): context-aware casting to strings
By default, we don't want contextful strings and we almost always want contextless strings.

To this end, we make taking a contextful string a very explicit operation under `to_contextful_str`
and we implement manually the `to_str` cast which requires a `if !s.has_context()` guard that
the macro cannot cover.

Change-Id: I7aae8e57a7d73e547e62b1edb0b1cc7e8c0c69b6
Reviewed-on: https://cl.tvl.fyi/c/depot/+/10425
Autosubmit: raitobezarius <tvl@lahfa.xyz>
Reviewed-by: tazjin <tazjin@tvl.su>
Tested-by: BuildkiteCI
2023-12-29 22:00:04 +00:00
..
attrs refactor(tvix/eval): simplify NixString representation(s) 2023-03-13 20:30:59 +00:00
arbitrary.rs refactor(tvix/eval): box PathBuf 2023-03-13 20:30:59 +00:00
attrs.rs feat(tvix/eval): nonrecursive coerce_to_string() 2023-12-12 14:54:46 +00:00
builtin.rs docs(tvix/eval): fix some broken docstr references 2023-09-22 09:14:33 +00:00
function.rs docs(tvix/eval): fix some broken docstr references 2023-09-22 09:14:33 +00:00
json.rs fix(tvix/eval): remove incorrect imports when coercing 2023-12-14 13:15:23 +00:00
list.rs chore(tvix): fix trivial clippy lints 2023-11-05 20:28:37 +00:00
mod.rs feat(tvix/eval): context-aware casting to strings 2023-12-29 22:00:04 +00:00
path.rs refactor(tvix/eval): factor out all calls to canon_path 2022-10-13 09:07:47 +00:00
string.rs feat(tvix/eval): introduce NixContext 2023-12-29 21:57:30 +00:00
thunk.rs feat(tvix/eval): nonrecursive deep_force() 2023-12-12 14:36:02 +00:00