diff options
Diffstat (limited to 'src/model/func.rs')
| -rw-r--r-- | src/model/func.rs | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/model/func.rs b/src/model/func.rs index ec9e70e0..2ba462d3 100644 --- a/src/model/func.rs +++ b/src/model/func.rs @@ -3,6 +3,7 @@ use std::hash::{Hash, Hasher}; use std::sync::Arc; use comemo::{Prehashed, Track, Tracked, TrackedMut}; +use ecow::EcoString; use super::{ Args, CastInfo, Dict, Eval, Flow, Node, NodeId, Route, Scope, Scopes, Selector, @@ -12,7 +13,6 @@ use crate::diag::{bail, SourceResult, StrResult}; use crate::syntax::ast::{self, AstNode, Expr}; use crate::syntax::{SourceId, Span, SyntaxNode}; use crate::util::hash128; -use crate::util::EcoString; use crate::World; /// An evaluatable function. @@ -139,8 +139,8 @@ impl Func { ) } Repr::With(wrapped, applied) => { - args.items.splice(..0, applied.items.iter().cloned()); - wrapped.call(vm, args) + args.items = applied.items.iter().cloned().chain(args.items).collect(); + return wrapped.call(vm, args); } } } |
