- I would drop the derive shorthands, and drop the
Cypher
prefix from the derive macros. They are already namespaced under the crate. - Regarding the
ty::new()
impls, I'm not a hardline devotee of the builder pattern, but when there are multiple private fields of the same type, I would absolutely prefer it, to remove the possibility of field-value confusion at construction.
I didn't dig deeper because I noticed you posted this to Reddit first ๐