git.delta.rocks / jrsonnet / refs/commits / 6db420cedf84

difftreelog

refactor(evaluator) remove inline variant of argument parsing

Лач2020-06-26parent: #9e9c937.patch.diff
in: master

2 files changed

modifiedcrates/jsonnet-evaluator/src/function.rsdiffbeforeafterboth
--- a/crates/jsonnet-evaluator/src/function.rs
+++ b/crates/jsonnet-evaluator/src/function.rs
@@ -17,20 +17,6 @@
 	args: &ArgsDesc,
 	tailstrict: bool,
 ) -> Result<Context> {
-	inline_parse_function_call(ctx, body_ctx, params, args, tailstrict)
-}
-
-/// See [parse_function_call](parse_function_call)
-///
-/// ## Notes
-/// This function is always inlined for tailstrict
-pub(crate) fn inline_parse_function_call(
-	ctx: Context,
-	body_ctx: Option<Context>,
-	params: &ParamsDesc,
-	args: &ArgsDesc,
-	tailstrict: bool,
-) -> Result<Context> {
 	let mut out = HashMap::new();
 	let mut positioned_args = vec![None; params.0.len()];
 	for (id, arg) in args.iter().enumerate() {
modifiedcrates/jsonnet-evaluator/src/val.rsdiffbeforeafterboth
1use crate::{1use crate::{
2 create_error, evaluate,2 create_error, evaluate,
3 function::{inline_parse_function_call, place_args},3 function::{parse_function_call, place_args},
4 Context, Error, ObjValue, Result,4 Context, Error, ObjValue, Result,
5};5};
6use jsonnet_parser::{ArgsDesc, LocExpr, ParamsDesc};6use jsonnet_parser::{ArgsDesc, LocExpr, ParamsDesc};
65impl FuncDesc {65impl FuncDesc {
66 /// This function is always inlined to make tailstrict work66 /// This function is always inlined to make tailstrict work
67 pub fn evaluate(&self, call_ctx: Context, args: &ArgsDesc, tailstrict: bool) -> Result<Val> {67 pub fn evaluate(&self, call_ctx: Context, args: &ArgsDesc, tailstrict: bool) -> Result<Val> {
68 let ctx = inline_parse_function_call(68 let ctx = parse_function_call(
69 call_ctx,69 call_ctx,
70 Some(self.ctx.clone()),70 Some(self.ctx.clone()),
71 &self.params,71 &self.params,