diff options
author | Ryan Lahfa <tvl@lahfa.xyz> | 2023-12-26T00·30+0100 |
---|---|---|
committer | clbot <clbot@tvl.fyi> | 2024-01-03T19·43+0000 |
commit | 20c894e232ab75b3ad79d1e8a8b3c47ba1394af2 (patch) | |
tree | 5dc363023d7a306d0eb16e102d1f7b9a030789d0 /tvix/eval/src/errors.rs | |
parent | cc098b9aaa2dc033d3decf53cdfbd20a8ac22689 (diff) |
feat(tvix/glue): context-aware `toFile` r/7336
This removes the reference tracking and uses instead the context for references and returns some. Change-Id: Ic359ca6b903b63f1a9c679c566004c617b792442 Reviewed-on: https://cl.tvl.fyi/c/depot/+/10435 Autosubmit: raitobezarius <tvl@lahfa.xyz> Reviewed-by: tazjin <tazjin@tvl.su> Tested-by: BuildkiteCI
Diffstat (limited to 'tvix/eval/src/errors.rs')
-rw-r--r-- | tvix/eval/src/errors.rs | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/tvix/eval/src/errors.rs b/tvix/eval/src/errors.rs index 6ac29492dfc3..4ba93a0aaba3 100644 --- a/tvix/eval/src/errors.rs +++ b/tvix/eval/src/errors.rs @@ -202,6 +202,9 @@ pub enum ErrorKind { context: String, underlying: Box<ErrorKind>, }, + + /// Unexpected context string + UnexpectedContext, } impl error::Error for Error { @@ -484,6 +487,10 @@ to a missing value in the attribute set(s) included via `with`."#, ErrorKind::WithContext { .. } => { panic!("internal ErrorKind::WithContext variant leaked") } + + ErrorKind::UnexpectedContext => { + write!(f, "unexpected context string") + } } } } @@ -736,6 +743,7 @@ impl Error { ErrorKind::InvalidAttributeName(_) => "in this attribute set", ErrorKind::RelativePathResolution(_) => "in this path literal", ErrorKind::UnexpectedArgument { .. } => "in this function call", + ErrorKind::UnexpectedContext => "in this string", // The spans for some errors don't have any more descriptive stuff // in them, or we don't utilise it yet. @@ -810,6 +818,7 @@ impl Error { ErrorKind::Xml(_) => "E034", ErrorKind::FromTomlError(_) => "E035", ErrorKind::NotSerialisableToJson(_) => "E036", + ErrorKind::UnexpectedContext => "E037", // Special error code for errors from other Tvix // components. We may want to introduce a code namespacing |