From d1f828961bccf9627ef4fb76ca528f039d180ff7 Mon Sep 17 00:00:00 2001 From: Nadrieril Date: Sun, 21 Apr 2019 11:30:58 +0200 Subject: Embrace TypeInternal as a semantic value --- dhall/src/normalize.rs | 1 + 1 file changed, 1 insertion(+) (limited to 'dhall/src/normalize.rs') diff --git a/dhall/src/normalize.rs b/dhall/src/normalize.rs index f092c4d..7aa8686 100644 --- a/dhall/src/normalize.rs +++ b/dhall/src/normalize.rs @@ -322,6 +322,7 @@ enum WHNF { (NormalizationContext, BTreeMap>), ), TextLit(Vec>), + /// This must not contain a value captured by one of the variants above. Expr(OutputSubExpr), } -- cgit v1.3.1 From ecff0ecd47bb38937fb43e60b8d78ea92e2af01c Mon Sep 17 00:00:00 2001 From: Nadrieril Date: Sun, 21 Apr 2019 22:52:00 +0200 Subject: Prepare for interop between two contexts --- dhall/src/lib.rs | 1 + dhall/src/normalize.rs | 54 ++++++++++++++++++++++++++++++-------------- dhall/src/typecheck.rs | 61 +++++++++++++++++++++++++++++++++++++++++++------- dhall_core/src/core.rs | 34 +++++++++++++++++----------- 4 files changed, 112 insertions(+), 38 deletions(-) (limited to 'dhall/src/normalize.rs') diff --git a/dhall/src/lib.rs b/dhall/src/lib.rs index c85b962..3860890 100644 --- a/dhall/src/lib.rs +++ b/dhall/src/lib.rs @@ -4,6 +4,7 @@ #![feature(label_break_value)] #![feature(non_exhaustive)] #![feature(bind_by_move_pattern_guards)] +#![feature(try_trait)] #![cfg_attr(test, feature(custom_inner_attributes))] #![allow( clippy::type_complexity, diff --git a/dhall/src/normalize.rs b/dhall/src/normalize.rs index 7aa8686..c17ed78 100644 --- a/dhall/src/normalize.rs +++ b/dhall/src/normalize.rs @@ -229,7 +229,21 @@ fn apply_builtin(b: Builtin, args: Vec) -> WHNF { #[derive(Debug, Clone)] enum EnvItem { Expr(WHNF), - Skip(usize), + Skip(V