difftreelog
feat std.exp builtin
in: master
2 files changed
crates/jrsonnet-evaluator/src/builtin/mod.rsdiffbeforeafterboth--- a/crates/jrsonnet-evaluator/src/builtin/mod.rs
+++ b/crates/jrsonnet-evaluator/src/builtin/mod.rs
@@ -96,6 +96,7 @@
("asin".into(), builtin_asin),
("acos".into(), builtin_acos),
("atan".into(), builtin_atan),
+ ("exp".into(), builtin_exp),
("extVar".into(), builtin_ext_var),
("native".into(), builtin_native),
("filter".into(), builtin_filter),
@@ -367,6 +368,14 @@
})
}
+fn builtin_exp(context: Context, _loc: Option<&ExprLocation>, args: &ArgsDesc) -> Result<Val> {
+ parse_args!(context, "exp", args, 1, [
+ 0, x: ty!(number) => Val::Num;
+ ], {
+ Ok(Val::Num(x.exp()))
+ })
+}
+
fn builtin_ext_var(context: Context, _loc: Option<&ExprLocation>, args: &ArgsDesc) -> Result<Val> {
parse_args!(context, "extVar", args, 1, [
0, x: ty!(string) => Val::Str;
crates/jrsonnet-stdlib/src/std.jsonnetdiffbeforeafterboth34 acos:: $intrinsic(acos),34 acos:: $intrinsic(acos),35 atan:: $intrinsic(atan),35 atan:: $intrinsic(atan),363637 exp:: $intrinsic(exp),3837 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',