SetData is there to support compatibility with our first version of Marshal/Unmarshal implementation. In this PR I described why using Data and SetData was not good. In short, it has some side effects such as linking objects using pointers.
The following should be done:
get rid of the data struct field in all fields of the field package (String, Numeric, etc.)
move code from SetData to Marshal
deprecate SetData method
This change should not break any integrations unless they still use the version with the Data() method that was deprecated and deleted.
SetData
is there to support compatibility with our first version of Marshal/Unmarshal implementation. In this PR I described why usingData
andSetData
was not good. In short, it has some side effects such as linking objects using pointers.The following should be done:
data
struct field in all fields of thefield
package (String
,Numeric
, etc.)SetData
toMarshal
SetData
methodThis change should not break any integrations unless they still use the version with the
Data()
method that was deprecated and deleted.