-
Notifications
You must be signed in to change notification settings - Fork 50
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
Add simpleion support for structs with multiple values for the same key #36
Comments
Any plans to tackle this? I'm using this library for an internal project but will need to drop it unless this is fixed. |
Yes, however there are several other things that we would probably prioritize over this in the short term, especially performance. That said, we would be happy to entertain a pull request if you need this functionality immediately. |
I'll be happy to help if I find some time. Do you have an estimation on how complex this change is? Can I get a rough description about the changes I'd need to do / files to look at / small design - provided that you might have thought about it already? I took a quick look at the code. Let me know if I got this right: in
One of the changes needed would be to remove that line and customize the IonPyDict class:
In order to support multiple mappings for the same field, IonPyDict could keep its state in a Another change I could identify is in the
I understand that I should stop using the And there might also be some changes to do in the Does this sound right to you? Am I missing something? |
I think you're on the right track here. When updating You can add the ability to receive all values for a given key through a separate API. I'd also expect iterating over the |
Simpleion maps Ion structs to python dicts, whose keys are de-duped.
IonPyDict
needs to support duplicate mappings when iterated and compared.Successful resolution of this issue will involve removal of the following files from the
test_vectors.py
skip list:good/equivs/structsFieldsRepeatedNames.ion
good/nonequivs/structs.ion
The text was updated successfully, but these errors were encountered: