printf: this commit adds support for https://github.com/tursodatabase/limbo/issues/885 tracking printf functionality

this commit introduces basic support for printf functionality and doesn't include advanced modifiers like width etc.
This commit is contained in:
Zaid Humayun 2025-02-04 20:05:14 +05:30
parent 20d3399c71
commit 6a863b3da9
8 changed files with 312 additions and 1 deletions

View file

@ -221,6 +221,7 @@ pub enum ScalarFunc {
#[cfg(not(target_family = "wasm"))]
LoadExtension,
StrfTime,
Printf,
}
impl Display for ScalarFunc {
@ -274,6 +275,7 @@ impl Display for ScalarFunc {
#[cfg(not(target_family = "wasm"))]
Self::LoadExtension => "load_extension".to_string(),
Self::StrfTime => "strftime".to_string(),
Self::Printf => "printf".to_string(),
};
write!(f, "{}", str)
}
@ -572,6 +574,7 @@ impl Func {
#[cfg(not(target_family = "wasm"))]
"load_extension" => Ok(Self::Scalar(ScalarFunc::LoadExtension)),
"strftime" => Ok(Self::Scalar(ScalarFunc::StrfTime)),
"printf" => Ok(Self::Scalar(ScalarFunc::Printf)),
_ => crate::bail_parse_error!("no such function: {}", name),
}
}