difftreelog
fix std.native should return null if not found
in: master
2 files changed
crates/jrsonnet-evaluator/src/builtin/mod.rsdiffbeforeafterboth375}375}376376377#[jrsonnet_macros::builtin]377#[jrsonnet_macros::builtin]378fn builtin_native(s: State, name: IStr) -> Result<FuncVal> {378fn builtin_native(s: State, name: IStr) -> Result<Any> {379 Ok(s.settings()379 Ok(Any(s380 .settings()380 .ext_natives381 .ext_natives381 .get(&name)382 .get(&name)382 .cloned()383 .cloned()383 .map(|v| FuncVal::Builtin(v.clone()))384 .map(|v| Val::Func(FuncVal::Builtin(v.clone())))384 .ok_or(UndefinedExternalFunction(name))?)385 .unwrap_or(Val::Null)))385}386}386387387#[jrsonnet_macros::builtin]388#[jrsonnet_macros::builtin]crates/jrsonnet-evaluator/src/error.rsdiffbeforeafterboth--- a/crates/jrsonnet-evaluator/src/error.rs
+++ b/crates/jrsonnet-evaluator/src/error.rs
@@ -63,8 +63,6 @@
#[error("external variable is not defined: {0}")]
UndefinedExternalVariable(IStr),
- #[error("native is not defined: {0}")]
- UndefinedExternalFunction(IStr),
#[error("field name should be string, got {0}")]
FieldMustBeStringGot(ValType),