summaryrefslogtreecommitdiff
path: root/src/eval
diff options
context:
space:
mode:
Diffstat (limited to 'src/eval')
-rw-r--r--src/eval/function.rs24
-rw-r--r--src/eval/mod.rs14
-rw-r--r--src/eval/scope.rs4
3 files changed, 21 insertions, 21 deletions
diff --git a/src/eval/function.rs b/src/eval/function.rs
index c45ac7ba..205690df 100644
--- a/src/eval/function.rs
+++ b/src/eval/function.rs
@@ -16,13 +16,13 @@ struct Inner<T: ?Sized> {
func: T,
}
-type Func = dyn Fn(&mut EvalContext, &mut Arguments) -> TypResult<Value>;
+type Func = dyn Fn(&mut EvalContext, &mut Args) -> TypResult<Value>;
impl Function {
/// Create a new function from a rust closure.
pub fn new<F>(name: Option<EcoString>, func: F) -> Self
where
- F: Fn(&mut EvalContext, &mut Arguments) -> TypResult<Value> + 'static,
+ F: Fn(&mut EvalContext, &mut Args) -> TypResult<Value> + 'static,
{
Self(Rc::new(Inner { name, func }))
}
@@ -33,7 +33,7 @@ impl Function {
}
/// Call the function in the context with the arguments.
- pub fn call(&self, ctx: &mut EvalContext, args: &mut Arguments) -> TypResult<Value> {
+ pub fn call(&self, ctx: &mut EvalContext, args: &mut Args) -> TypResult<Value> {
(&self.0.func)(ctx, args)
}
}
@@ -58,16 +58,16 @@ impl PartialEq for Function {
/// Evaluated arguments to a function.
#[derive(Clone, PartialEq)]
-pub struct Arguments {
+pub struct Args {
/// The span of the whole argument list.
pub span: Span,
/// The positional and named arguments.
- pub items: Vec<Argument>,
+ pub items: Vec<Arg>,
}
/// An argument to a function call: `12` or `draw: false`.
#[derive(Clone, PartialEq)]
-pub struct Argument {
+pub struct Arg {
/// The span of the whole argument.
pub span: Span,
/// The name of the argument (`None` for positional arguments).
@@ -76,7 +76,7 @@ pub struct Argument {
pub value: Spanned<Value>,
}
-impl Arguments {
+impl Args {
/// Find and consume the first castable positional argument.
pub fn eat<T>(&mut self) -> Option<T>
where
@@ -169,11 +169,11 @@ impl Arguments {
{
let mut iter = self.items.into_iter();
let value = match iter.next() {
- Some(Argument { name: None, value, .. }) => value.v.cast().at(value.span)?,
+ Some(Arg { name: None, value, .. }) => value.v.cast().at(value.span)?,
None => {
bail!(self.span, "missing {}", what);
}
- Some(Argument { name: Some(_), span, .. }) => {
+ Some(Arg { name: Some(_), span, .. }) => {
bail!(span, "named pair is not allowed here");
}
};
@@ -186,7 +186,7 @@ impl Arguments {
}
}
-impl Debug for Arguments {
+impl Debug for Args {
fn fmt(&self, f: &mut Formatter) -> fmt::Result {
f.write_char('(')?;
for (i, arg) in self.items.iter().enumerate() {
@@ -199,7 +199,7 @@ impl Debug for Arguments {
}
}
-impl Debug for Argument {
+impl Debug for Arg {
fn fmt(&self, f: &mut Formatter) -> fmt::Result {
if let Some(name) = &self.name {
f.write_str(name)?;
@@ -210,5 +210,5 @@ impl Debug for Argument {
}
dynamic! {
- Arguments: "arguments",
+ Args: "arguments",
}
diff --git a/src/eval/mod.rs b/src/eval/mod.rs
index f48312c8..d88dd2bb 100644
--- a/src/eval/mod.rs
+++ b/src/eval/mod.rs
@@ -393,7 +393,7 @@ impl Eval for CallExpr {
}
impl Eval for CallArgs {
- type Output = Arguments;
+ type Output = Args;
fn eval(&self, ctx: &mut EvalContext) -> TypResult<Self::Output> {
let mut items = Vec::with_capacity(self.items.len());
@@ -402,14 +402,14 @@ impl Eval for CallArgs {
let span = arg.span();
match arg {
CallArg::Pos(expr) => {
- items.push(Argument {
+ items.push(Arg {
span,
name: None,
value: Spanned::new(expr.eval(ctx)?, expr.span()),
});
}
CallArg::Named(Named { name, expr }) => {
- items.push(Argument {
+ items.push(Arg {
span,
name: Some((&name.string).into()),
value: Spanned::new(expr.eval(ctx)?, expr.span()),
@@ -417,14 +417,14 @@ impl Eval for CallArgs {
}
CallArg::Spread(expr) => match expr.eval(ctx)? {
Value::Array(array) => {
- items.extend(array.into_iter().map(|value| Argument {
+ items.extend(array.into_iter().map(|value| Arg {
span,
name: None,
value: Spanned::new(value, span),
}));
}
Value::Dict(dict) => {
- items.extend(dict.into_iter().map(|(key, value)| Argument {
+ items.extend(dict.into_iter().map(|(key, value)| Arg {
span,
name: Some(key),
value: Spanned::new(value, span),
@@ -432,7 +432,7 @@ impl Eval for CallArgs {
}
v => {
if let Value::Dyn(dynamic) = &v {
- if let Some(args) = dynamic.downcast_ref::<Arguments>() {
+ if let Some(args) = dynamic.downcast_ref::<Args>() {
items.extend(args.items.iter().cloned());
continue;
}
@@ -444,7 +444,7 @@ impl Eval for CallArgs {
}
}
- Ok(Arguments { span: self.span, items })
+ Ok(Args { span: self.span, items })
}
}
diff --git a/src/eval/scope.rs b/src/eval/scope.rs
index 0d701687..eb057ae3 100644
--- a/src/eval/scope.rs
+++ b/src/eval/scope.rs
@@ -4,7 +4,7 @@ use std::fmt::{self, Debug, Formatter};
use std::iter;
use std::rc::Rc;
-use super::{Arguments, EvalContext, Function, Value};
+use super::{Args, EvalContext, Function, Value};
use crate::diag::TypResult;
use crate::util::EcoString;
@@ -91,7 +91,7 @@ impl Scope {
/// Define a constant function.
pub fn def_func<F>(&mut self, name: impl Into<EcoString>, f: F)
where
- F: Fn(&mut EvalContext, &mut Arguments) -> TypResult<Value> + 'static,
+ F: Fn(&mut EvalContext, &mut Args) -> TypResult<Value> + 'static,
{
let name = name.into();
self.def_const(name.clone(), Function::new(Some(name), f));