SetAttributeMacro

Trait SetAttributeMacro 

Source
pub trait SetAttributeMacro {
    // Required methods
    fn generate_set_clause(&self) -> Vec<String>;
    fn generate_set_and_where_clause(&self) -> (Vec<String>, Vec<String>);
}
Expand description

SetAttributeMacro trait 定义了处理字段属性宏的功能。

这个 trait 主要用于解析和处理 #[set(...)] 属性宏,该宏用于 定制 SQL 语句中的字段部分。通过实现这个 trait,可以根据结构体 字段上的 #[set] 宏指定的参数生成对应的字段列表。

Required Methods§

Source

fn generate_set_clause(&self) -> Vec<String>

解析 #[set(...)] 属性宏,并生成字段列表。

此方法会分析结构体字段上的 #[set] 宏参数,如 ignore, rename, index, 和 where 并据此生成对应的字段名称列表。这个列表通常用于构建 SQL 语句的 WHERE 部分。

返回值是一个包含字段名称的 String 向量。 数据应返回为 [“field1 = $1”, “field1 = $[2]”, “[rename] = $3”, …]

Source

fn generate_set_and_where_clause(&self) -> (Vec<String>, Vec<String>)

当存在 #[set(where, ...)]#[set(where = "..."), ...] 可以使用该方法返回包含 set 和 where 语句需要的数组的元组

Implementors§