summaryrefslogtreecommitdiff
path: root/dhall/src/expr.rs
diff options
context:
space:
mode:
Diffstat (limited to 'dhall/src/expr.rs')
-rw-r--r--dhall/src/expr.rs7
1 files changed, 4 insertions, 3 deletions
diff --git a/dhall/src/expr.rs b/dhall/src/expr.rs
index 5ff097b..aa02c28 100644
--- a/dhall/src/expr.rs
+++ b/dhall/src/expr.rs
@@ -29,11 +29,11 @@ pub struct Resolved(pub(crate) SubExpr<X, X>);
derive_other_traits!(Resolved);
#[derive(Debug, Clone, Eq)]
-pub struct Typed(pub(crate) SubExpr<X, X>, pub(crate) Type);
+pub struct Typed(pub(crate) SubExpr<X, X>, pub(crate) Option<Type>);
derive_other_traits!(Typed);
#[derive(Debug, Clone, Eq)]
-pub struct Normalized(pub(crate) SubExpr<X, X>, pub(crate) Type);
+pub struct Normalized(pub(crate) SubExpr<X, X>, pub(crate) Option<Type>);
derive_other_traits!(Normalized);
/// An expression of type `Type` (like `Bool` or `Natural -> Text`, but not `Type`)
@@ -47,7 +47,8 @@ pub struct Type(pub(crate) TypeInternal);
#[derive(Debug, Clone, PartialEq, Eq)]
pub(crate) enum TypeInternal {
Expr(Box<Normalized>),
- Untyped,
+ // The type of `Sort`
+ SuperType,
}
// Exposed for the macros