diff options
Diffstat (limited to 'tvix/eval/src/value')
-rw-r--r-- | tvix/eval/src/value/mod.rs | 5 | ||||
-rw-r--r-- | tvix/eval/src/value/thunk.rs | 1 |
2 files changed, 6 insertions, 0 deletions
diff --git a/tvix/eval/src/value/mod.rs b/tvix/eval/src/value/mod.rs index c9c7f3ca4745..f57cfda5eecf 100644 --- a/tvix/eval/src/value/mod.rs +++ b/tvix/eval/src/value/mod.rs @@ -184,6 +184,7 @@ pub enum PointerEquality { } impl Value { + // TODO(amjoseph): de-asyncify this (when called directly by the VM) /// Deeply forces a value, traversing e.g. lists and attribute sets and forcing /// their contents, too. /// @@ -242,6 +243,7 @@ impl Value { Ok(value) } + // TODO(amjoseph): de-asyncify this (when called directly by the VM) /// Coerce a `Value` to a string. See `CoercionKind` for a rundown of what /// input types are accepted under what circumstances. pub async fn coerce_to_string(self, co: GenCo, kind: CoercionKind) -> Result<Value, ErrorKind> { @@ -331,6 +333,7 @@ impl Value { } } + // TODO(amjoseph): de-asyncify this (when called directly by the VM) /// Compare two Nix values for equality, forcing nested parts of the structure /// as needed. /// @@ -539,6 +542,7 @@ impl Value { gen_is!(is_number, Value::Integer(_) | Value::Float(_)); gen_is!(is_bool, Value::Bool(_)); + // TODO(amjoseph): de-asyncify this (when called directly by the VM) /// Compare `self` against other using (fallible) Nix ordering semantics. /// /// Note that as this returns an `Option<Ordering>` it can not directly be @@ -606,6 +610,7 @@ impl Value { } } + // TODO(amjoseph): de-asyncify this (when called directly by the VM) pub async fn force(self, co: GenCo) -> Result<Value, ErrorKind> { if let Value::Thunk(thunk) = self { return thunk.force(co).await; diff --git a/tvix/eval/src/value/thunk.rs b/tvix/eval/src/value/thunk.rs index e990a5cad5cc..f2959ba15c74 100644 --- a/tvix/eval/src/value/thunk.rs +++ b/tvix/eval/src/value/thunk.rs @@ -113,6 +113,7 @@ impl Thunk { ))))) } + // TODO(amjoseph): de-asyncify this pub async fn force(self, co: GenCo) -> Result<Value, ErrorKind> { // If the current thunk is already fully evaluated, return its evaluated // value. The VM will continue running the code that landed us here. |