This makes some usability improvements to the core value API. The main changes here are the enum DicomValue<I, P> now has a different default for the type parameter P (to the same value used by in-memory DICOM objects in dicom_object), and it uses struct definitions for data set sequences and pixel data fragment sequence, instead of declaring struct variants in the enum.
I also took this opportunity to remove deprecated functions, adjust the error types returned in some methods, and increase test coverage a bit.
Summary
Move DicomValue sequence variant fields to their own independent types (DataSetSequence and PixelFragmentSequence)
Change default of Value type parameter P to Vec<u8> (also aliased to InMemFragment)
Change the return error type of Value::to_str, Value::to_raw_str, Value::to_bytes
from CastValueError to ConvertValueError
Change behavior of PartialEq for DicomValue between data set items: recorded length is ignored, only items are compared.
This makes some usability improvements to the core value API. The main changes here are the enum
DicomValue<I, P>
now has a different default for the type parameterP
(to the same value used by in-memory DICOM objects indicom_object
), and it uses struct definitions for data set sequences and pixel data fragment sequence, instead of declaring struct variants in the enum.I also took this opportunity to remove deprecated functions, adjust the error types returned in some methods, and increase test coverage a bit.
Summary
DicomValue
sequence variant fields to their own independent types (DataSetSequence
andPixelFragmentSequence
)P
toVec<u8>
(also aliased toInMemFragment
)Value::to_str
,Value::to_raw_str
,Value::to_bytes
CastValueError
toConvertValueError
PartialEq
forDicomValue
between data set items: recorded length is ignored, only items are compared.