git.delta.rocks / jrsonnet / refs/commits / 64f3674f18c4

difftreelog

source

crates/jrsonnet-evaluator/src/stdlib/mod.rs546 Bsourcehistory
1// All builtins should return results2#![allow(clippy::unnecessary_wraps)]34use format::{format_arr, format_obj};5use jrsonnet_interner::IStr;67use crate::{error::Result, function::CallLocation, State, Val};89pub mod format;1011pub fn std_format(str: IStr, vals: Val) -> Result<String> {12	State::push(13		CallLocation::native(),14		|| format!("std.format of {str}"),15		|| {16			Ok(match vals {17				Val::Arr(vals) => format_arr(&str, &vals.evaluated()?)?,18				Val::Obj(obj) => format_obj(&str, &obj)?,19				o => format_arr(&str, &[o])?,20			})21		},22	)23}