Как я могу отобразить значение перечисления в объекте MATLAB

Учитывая следующие два класса

classdef EnumClass

    enumeration
        enumVal1
        enumVal2
    end
end


classdef EnumDisplay

    properties
        enumValue = EnumClass.enumVal1
        numberValue = 1
    end
end

При отображенииEnumClass, значение отображается:

>> E = EnumClass.enumVal1

E = 

    enumVal1

но при отображенииEnumDisplay в командном окне значение перечисления подавляется, и отображаются только размер и класс массива.

>> C = EnumDisplay()

C =

  EnumDisplay with properties:

      enumValue: [1x1 EnumClass]
    numberValue: 1

Что является самым простым способом отображения значения перечисления в списке свойств класса. То есть Существует ли простой и общий способ отображения класса следующим образом:

>> C = EnumDisplay()

C =

  EnumDisplay with properties:

      enumValue: enumVal1
    numberValue: 1

Я подозреваю, что это как-то связано с наследованием отmatlab.mixin.CustomDisplay где-то класс, но я хочу, чтобы это было как можно более общим, чтобы ограничить количество кодирования, которое мне нужно сделать для каждого класса перечисления и / или каждого класса, который имеет значение перечисления в свойстве.

Частичное решение

Мне удалось найти частичное решение этой проблемы, но оно не совсем удовлетворительное.

classdef EnumDisplay < matlab.mixin.CustomDisplay

    properties
        enumValue = EnumClass.enumVal1
        numberValue = 1
    end

    methods (Access = protected)
        function groups = getPropertyGroups(This)
            groups = [email protected](This);
            groups.PropertyList.enumValue = char(This.enumValue);
        end
    end
end

Теперь дисплей выглядит так:

>> C = EnumDisplay()

C = 

  EnumDisplay with properties:

      enumValue: 'enumVal1'
    numberValue: 1

Это почти там, но не совсем. Я не хочу, чтобы перечисленное значение было в кавычках.

Ответы на вопрос(1)

Ваш ответ на вопрос