Loading mat files does not support enumerations with function handles?

I basically have an enumeration class with one property being a handle. After saving an instance (TestEnum.a) to a mat file and loading it again I am facing the following warning:
Warning: The value of enumeration member 'a' differs from when the enumeration was saved. 'a' will be loaded with the new value.
Why is that the case? I have noticed that this does not happen in case the property is anything else?
classdef TestEnum
properties
hdl
end
enumeration
a (@(x) x)
end
methods
function obj = TestEnum(hdl)
obj.hdl = hdl;
end
end
end

Answers (1)

The question of whether two function handles are the same is a bit complicated.

1 Comment

Okay I understand the issue but what options do I have to work around it?
Customizing the save and load process was my initial idea. Unfortunately I have noticed that for enumerations the loadobj(s) function is never called.

Sign in to comment.

Products

Release

R2021a

Asked:

on 28 Aug 2021

Commented:

on 29 Aug 2021

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!