diff options
Diffstat (limited to '')
| -rw-r--r-- | dhall/src/syntax/ast/expr.rs | 15 | 
1 files changed, 6 insertions, 9 deletions
diff --git a/dhall/src/syntax/ast/expr.rs b/dhall/src/syntax/ast/expr.rs index 410fb1d..48c48d8 100644 --- a/dhall/src/syntax/ast/expr.rs +++ b/dhall/src/syntax/ast/expr.rs @@ -235,9 +235,6 @@ impl<E> Expr<E> {      pub fn as_ref(&self) -> &UnspannedExpr<E> {          &self.kind      } -    pub fn as_mut(&mut self) -> &mut UnspannedExpr<E> { -        &mut self.kind -    }      pub fn span(&self) -> Span {          self.span.clone()      } @@ -264,7 +261,7 @@ impl<E> Expr<E> {          E: Clone,          F1: FnMut(Import<Expr<E>>) -> Result<E, Err>,      { -        match self.as_mut() { +        match self.kind.as_mut() {              ExprKind::BinOp(BinOp::ImportAlt, l, r) => {                  let garbage_expr = ExprKind::BoolLit(false);                  let new_self = if l.traverse_resolve_mut(f).is_ok() { @@ -273,12 +270,12 @@ impl<E> Expr<E> {                      r.traverse_resolve_mut(f)?;                      r                  }; -                *self.as_mut() = -                    std::mem::replace(new_self.as_mut(), garbage_expr); +                *self.kind = +                    std::mem::replace(new_self.kind.as_mut(), garbage_expr);              }              _ => { -                self.as_mut().traverse_mut(|e| e.traverse_resolve_mut(f))?; -                if let ExprKind::Import(import) = self.as_mut() { +                self.kind.traverse_mut(|e| e.traverse_resolve_mut(f))?; +                if let ExprKind::Import(import) = self.kind.as_mut() {                      let garbage_import = Import {                          mode: ImportMode::Code,                          location: ImportLocation::Missing, @@ -286,7 +283,7 @@ impl<E> Expr<E> {                      };                      // Move out of &mut import                      let import = std::mem::replace(import, garbage_import); -                    *self.as_mut() = ExprKind::Embed(f(import)?); +                    *self.kind = ExprKind::Embed(f(import)?);                  }              }          }  | 
