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

Object Reference Types #36

Merged
merged 20 commits into from
Nov 27, 2024
Merged

Object Reference Types #36

merged 20 commits into from
Nov 27, 2024

Conversation

JamesMc86
Copy link

Hi All,

This is the work I had done for the other branch to add a minimal first version of object references. (see aldanor#279).

It adds ObjectReference1 as pre-1.12 object references and ObjectReference2 as the new reference types based on the STD_REF type.

I've tried to make this useful without being too large and can build on it further.

I've rebased that work onto your new main for this PR.

Let me know if there are any questions or anything else needed

mulimoen and others added 17 commits November 16, 2024 07:21
Added a trait for object references and refactored the StdReference as a
newtype (ObjectReference2) and behind the trait so we can support
it side by side with the older object references.
This commit represents an MVP for object references.

This includes the implementation of Object1 for 1.8 and later, and
Object2 for 1.12 and later.
The wrapper to H5RCopy is causing issues in some enviroments.

This commit removes it for now as it isn't critical to the basic object
implementation.
There appear to be bugs in the v1.12.0 version which certainly break
ObjectReference2 is an element in compound type. Other bugs were seen
previously as well so this appears to be a more stable option.
Needed to add the check cfg for the version features in the hdf-types
library
Copy link
Collaborator

@magnusuMET magnusuMET left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for your patience on this. I think this is good to go, with just the following two items which should be addressed

hdf5/src/hl/references/mod.rs Outdated Show resolved Hide resolved
hdf5/src/hl/references/mod.rs Outdated Show resolved Hide resolved
JamesMc86 added a commit to WiresmithTech/hdf5-rust that referenced this pull request Nov 26, 2024
This change adds the private ObjectReferencePrivate trait which is used
to seal the ObjectReference trait and prevent outside implementations.

Refs: metno#36
This change adds the private ObjectReferencePrivate trait which is used
to seal the ObjectReference trait and prevent outside implementations.

Refs: metno#36
@magnusuMET magnusuMET merged commit be72139 into metno:main Nov 27, 2024
38 checks passed
@magnusuMET
Copy link
Collaborator

Thanks @JamesMc86!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants