Replace impl_pure_record and similar macros with common Python classes #271
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
PyIdentifier
,PyChemicalRecord
and builds the Python classes directly from the rust versions instead.impl_pure_record
,impl_binary_record
, andimpl_segment_record
macros in favor of the newPyPureRecord
,PyBinaryRecord
andPySegmentRecord
that useIndexMap
(kwargs) instead of genericsBinaryRecord<I,M>
intoBinaryRecord<M>
andBinarySegmentRecord
.BinarySegmentRecord
is (for now) not generic, but rather always usingf64
as model record.No changes to the Rust interface at all. Will break all models that use non-f64 parameters (i.e., bool flags, enums, Vecs (especially with non-fixed lengths)). Therefore, the next step has to be to unify the parameter creation which I think is worth it in terms of maintainability and structure of the Python code.