difftreelog
feat std.{sin,cos,tan,asin,acos,atan}
in: master
2 files changed
crates/jrsonnet-evaluator/src/builtin/mod.rsdiffbeforeafterboth90 ("log".into(), builtin_log),90 ("log".into(), builtin_log),91 ("pow".into(), builtin_pow),91 ("pow".into(), builtin_pow),92 ("sqrt".into(), builtin_sqrt),92 ("sqrt".into(), builtin_sqrt),93 ("sin".into(), builtin_sin),94 ("cos".into(), builtin_cos),95 ("tan".into(), builtin_tan),96 ("asin".into(), builtin_asin),97 ("acos".into(), builtin_acos),98 ("atan".into(), builtin_atan),93 ("extVar".into(), builtin_ext_var),99 ("extVar".into(), builtin_ext_var),94 ("native".into(), builtin_native),100 ("native".into(), builtin_native),95 ("filter".into(), builtin_filter),101 ("filter".into(), builtin_filter),313 })319 })314}320}321322fn builtin_sin(context: Context, _loc: Option<&ExprLocation>, args: &ArgsDesc) -> Result<Val> {323 parse_args!(context, "sin", args, 1, [324 0, x: ty!(number) => Val::Num;325 ], {326 Ok(Val::Num(x.sin()))327 })328}329330fn builtin_cos(context: Context, _loc: Option<&ExprLocation>, args: &ArgsDesc) -> Result<Val> {331 parse_args!(context, "cos", args, 1, [332 0, x: ty!(number) => Val::Num;333 ], {334 Ok(Val::Num(x.cos()))335 })336}337338fn builtin_tan(context: Context, _loc: Option<&ExprLocation>, args: &ArgsDesc) -> Result<Val> {339 parse_args!(context, "tan", args, 1, [340 0, x: ty!(number) => Val::Num;341 ], {342 Ok(Val::Num(x.tan()))343 })344}345346fn builtin_asin(context: Context, _loc: Option<&ExprLocation>, args: &ArgsDesc) -> Result<Val> {347 parse_args!(context, "asin", args, 1, [348 0, x: ty!(number) => Val::Num;349 ], {350 Ok(Val::Num(x.asin()))351 })352}353354fn builtin_acos(context: Context, _loc: Option<&ExprLocation>, args: &ArgsDesc) -> Result<Val> {355 parse_args!(context, "acos", args, 1, [356 0, x: ty!(number) => Val::Num;357 ], {358 Ok(Val::Num(x.acos()))359 })360}361362fn builtin_atan(context: Context, _loc: Option<&ExprLocation>, args: &ArgsDesc) -> Result<Val> {363 parse_args!(context, "atan", args, 1, [364 0, x: ty!(number) => Val::Num;365 ], {366 Ok(Val::Num(x.atan()))367 })368}315369316fn builtin_ext_var(context: Context, _loc: Option<&ExprLocation>, args: &ArgsDesc) -> Result<Val> {370fn builtin_ext_var(context: Context, _loc: Option<&ExprLocation>, args: &ArgsDesc) -> Result<Val> {317 parse_args!(context, "extVar", args, 1, [371 parse_args!(context, "extVar", args, 1, [crates/jrsonnet-stdlib/src/std.jsonnetdiffbeforeafterboth--- a/crates/jrsonnet-stdlib/src/std.jsonnet
+++ b/crates/jrsonnet-stdlib/src/std.jsonnet
@@ -27,6 +27,13 @@
pow:: $intrinsic(pow),
sqrt:: $intrinsic(sqrt),
+ sin:: $intrinsic(sin),
+ cos:: $intrinsic(cos),
+ tan:: $intrinsic(tan),
+ asin:: $intrinsic(asin),
+ acos:: $intrinsic(acos),
+ atan:: $intrinsic(atan),
+
isString(v):: std.type(v) == 'string',
isNumber(v):: std.type(v) == 'number',
isBoolean(v):: std.type(v) == 'boolean',