|
@@ -113,6 +113,7 @@ fn derive_id(
|
|
|
) -> proc_macro2::TokenStream {
|
|
|
let struct_name = &input.ident;
|
|
|
let id_name = format_ident!("{}ID", &input.ident);
|
|
|
+ let id_name_as_str = id_name.to_string();
|
|
|
|
|
|
quote! {
|
|
|
#[derive(Debug,PartialEq,Clone,Copy,#microrm_ref::re_export::serde::Serialize,#microrm_ref::re_export::serde::Deserialize)]
|
|
@@ -125,6 +126,12 @@ fn derive_id(
|
|
|
fn raw_id(&self) -> i64 { self.0 }
|
|
|
}
|
|
|
|
|
|
+ impl std::fmt::Display for #id_name {
|
|
|
+ fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
|
|
|
+ f.write_fmt(format_args!("{}({})", #id_name_as_str, self.0))
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
impl #microrm_ref::model::Modelable for #id_name {
|
|
|
fn bind_to(&self, stmt: &mut #microrm_ref::re_export::sqlite::Statement, col: usize) -> #microrm_ref::re_export::sqlite::Result<()> {
|
|
|
use #microrm_ref::re_export::sqlite::Bindable;
|