git.delta.rocks / jrsonnet / refs/commits / f62134de8f74

difftreelog

feat std.exp builtin

Yaroslav Bolyukin2021-07-12parent: #7025475.patch.diff
in: master

2 files changed

modifiedcrates/jrsonnet-evaluator/src/builtin/mod.rsdiffbeforeafterboth
96 ("asin".into(), builtin_asin),96 ("asin".into(), builtin_asin),
97 ("acos".into(), builtin_acos),97 ("acos".into(), builtin_acos),
98 ("atan".into(), builtin_atan),98 ("atan".into(), builtin_atan),
99 ("exp".into(), builtin_exp),
99 ("extVar".into(), builtin_ext_var),100 ("extVar".into(), builtin_ext_var),
100 ("native".into(), builtin_native),101 ("native".into(), builtin_native),
101 ("filter".into(), builtin_filter),102 ("filter".into(), builtin_filter),
367 })368 })
368}369}
370
371fn builtin_exp(context: Context, _loc: Option<&ExprLocation>, args: &ArgsDesc) -> Result<Val> {
372 parse_args!(context, "exp", args, 1, [
373 0, x: ty!(number) => Val::Num;
374 ], {
375 Ok(Val::Num(x.exp()))
376 })
377}
369378
370fn builtin_ext_var(context: Context, _loc: Option<&ExprLocation>, args: &ArgsDesc) -> Result<Val> {379fn builtin_ext_var(context: Context, _loc: Option<&ExprLocation>, args: &ArgsDesc) -> Result<Val> {
371 parse_args!(context, "extVar", args, 1, [380 parse_args!(context, "extVar", args, 1, [
modifiedcrates/jrsonnet-stdlib/src/std.jsonnetdiffbeforeafterboth
34 acos:: $intrinsic(acos),34 acos:: $intrinsic(acos),
35 atan:: $intrinsic(atan),35 atan:: $intrinsic(atan),
3636
37 exp:: $intrinsic(exp),
38
37 isString(v):: std.type(v) == 'string',39 isString(v):: std.type(v) == 'string',
38 isNumber(v):: std.type(v) == 'number',40 isNumber(v):: std.type(v) == 'number',
39 isBoolean(v):: std.type(v) == 'boolean',41 isBoolean(v):: std.type(v) == 'boolean',