Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rewrite fam module #120

Open
lauralt opened this issue Feb 19, 2021 · 1 comment
Open

Rewrite fam module #120

lauralt opened this issue Feb 19, 2021 · 1 comment
Labels
help wanted Extra attention is needed

Comments

@lauralt
Copy link
Contributor

lauralt commented Feb 19, 2021

fam module is difficult to follow and might benefit from a better and more intuitive design.

@andreeaflorescu andreeaflorescu added the help wanted Extra attention is needed label Feb 24, 2021
@alexandruag
Copy link

Adding some things we ran into here:

  • It looks like bindgen does not autogenerate derives/implementations of Clone for structs that contain __IncompleteArrayField<T> members (in the kvm-bindings crate for example). We could investigate/ask why that is the case. If we can rely on a FamStruct: Clone trait bound, then we can simplify the clone operation for FamStructWrappers by directly cloning the inner Vec (and generally speaking, there doesn't seem to be any reason why POD objects cannot implement Clone).

  • We do mention that implementors of FamStruct and their entires are supposed to be POD structs, but it seems there is room for interpretation and regarding precisely what that means. We should try to come up with a crisper, more explicit, requirement list for the FamStruct safety contract, even if it means being more specific than otherwise necessary.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

3 participants