#[path = "citizen/class.rs"]
mod class;
#[path = "citizen/codec.rs"]
mod codec;
#[path = "citizen/construct.rs"]
mod construct;
#[path = "citizen/inventory.rs"]
mod inventory;
pub(crate) use class::register_shape_citizen_class;
pub(crate) use codec::{
build_shape_value, decode_expr_kind, decode_extra, decode_hooks, decode_shape_list,
decode_shape_value, decode_symbol, decode_table_fields, decode_venn_members, encode_extra,
encode_hooks, encode_shape_expr, encode_shape_list, encode_table_fields, expr_kind_symbol,
or_strategy_symbol,
};
pub fn any_shape_class_symbol() -> sim_kernel::Symbol {
sim_kernel::Symbol::qualified("shape", "Any")
}
pub fn exact_expr_shape_class_symbol() -> sim_kernel::Symbol {
sim_kernel::Symbol::qualified("shape", "ExactExpr")
}
pub fn expr_kind_shape_class_symbol() -> sim_kernel::Symbol {
sim_kernel::Symbol::qualified("shape", "ExprKind")
}
pub fn class_shape_class_symbol() -> sim_kernel::Symbol {
sim_kernel::Symbol::qualified("shape", "Class")
}
pub fn list_shape_class_symbol() -> sim_kernel::Symbol {
sim_kernel::Symbol::qualified("shape", "List")
}
pub fn table_shape_class_symbol() -> sim_kernel::Symbol {
sim_kernel::Symbol::qualified("shape", "Table")
}
pub fn or_shape_class_symbol() -> sim_kernel::Symbol {
sim_kernel::Symbol::qualified("shape", "Or")
}
pub fn and_shape_class_symbol() -> sim_kernel::Symbol {
sim_kernel::Symbol::qualified("shape", "And")
}
pub fn not_shape_class_symbol() -> sim_kernel::Symbol {
sim_kernel::Symbol::qualified("shape", "Not")
}
pub fn repeat_shape_class_symbol() -> sim_kernel::Symbol {
sim_kernel::Symbol::qualified("shape", "Repeat")
}
pub fn hooked_shape_class_symbol() -> sim_kernel::Symbol {
sim_kernel::Symbol::qualified("shape", "Hooked")
}
pub fn venn_shape_set_class_symbol() -> sim_kernel::Symbol {
sim_kernel::Symbol::qualified("shape", "Venn")
}