#[derive(Debug, Clone, Copy, PartialEq, Eq)]
pub struct CollaborativeColumnDescriptor {
pub model: &'static str,
pub table: &'static str,
pub column: &'static str,
}
inventory::collect!(CollaborativeColumnDescriptor);
#[must_use]
pub fn registered_collaborative_columns() -> Vec<&'static CollaborativeColumnDescriptor> {
inventory::iter::<CollaborativeColumnDescriptor>
.into_iter()
.collect()
}
#[must_use]
pub fn collaborative_columns_for_table(table: &str) -> Vec<&'static str> {
registered_collaborative_columns()
.into_iter()
.filter(|d| d.table == table)
.map(|d| d.column)
.collect()
}