difftreelog
Merge pull request #100 from CertainLach/xor-builtin
in: master
3 files changed
crates/jrsonnet-stdlib/src/lib.rsdiffbeforeafterboth86 ("sign", builtin_sign::INST),86 ("sign", builtin_sign::INST),87 ("max", builtin_max::INST),87 ("max", builtin_max::INST),88 ("min", builtin_min::INST),88 ("min", builtin_min::INST),89 ("sum", builtin_sum::INST),89 ("modulo", builtin_modulo::INST),90 ("modulo", builtin_modulo::INST),90 ("floor", builtin_floor::INST),91 ("floor", builtin_floor::INST),91 ("ceil", builtin_ceil::INST),92 ("ceil", builtin_ceil::INST),105 ("mod", builtin_mod::INST),106 ("mod", builtin_mod::INST),106 ("primitiveEquals", builtin_primitive_equals::INST),107 ("primitiveEquals", builtin_primitive_equals::INST),107 ("equals", builtin_equals::INST),108 ("equals", builtin_equals::INST),109 ("xor", builtin_xor::INST),108 ("format", builtin_format::INST),110 ("format", builtin_format::INST),109 // Sort111 // Sort110 ("sort", builtin_sort::INST),112 ("sort", builtin_sort::INST),crates/jrsonnet-stdlib/src/math.rsdiffbeforeafterboth--- a/crates/jrsonnet-stdlib/src/math.rs
+++ b/crates/jrsonnet-stdlib/src/math.rs
@@ -25,6 +25,11 @@
}
#[builtin]
+pub fn builtin_sum(arr: Vec<f64>) -> f64 {
+ arr.iter().sum()
+}
+
+#[builtin]
pub fn builtin_modulo(x: f64, y: f64) -> f64 {
x % y
}
crates/jrsonnet-stdlib/src/operator.rsdiffbeforeafterboth--- a/crates/jrsonnet-stdlib/src/operator.rs
+++ b/crates/jrsonnet-stdlib/src/operator.rs
@@ -34,6 +34,11 @@
}
#[builtin]
+pub fn builtin_xor(x: bool, y: bool) -> bool {
+ x ^ y
+}
+
+#[builtin]
pub fn builtin_format(str: IStr, vals: Val) -> Result<String> {
std_format(&str, vals)
}