RolandRitt/Matlab-NestedMap

Version 1.4.0.0 (4,97 KB) von Roland
MapNested is a subclass from 'containers.map' which implements nested maps (easy multi-key access)
266 Downloads
Aktualisiert 8 Jul 2017

Matlab-NestedMap
Matlab implementation for nested maps (map of maps). This class implements easy set and get access for multible keys. The syntax is the following: Generate a new MapNested object:
NMapobj = MapNested(); %generate a new object
Write values to the Map (2 possibilites):

%possibility 1 syntax:
NMapobj('key1', 'key2', 'key3') = 10; %assign value 10 to the keyList
NMapobj({'key1', 'key2', 'key4'}) = 5; %assign value 5 using a cell array for the keyList

%possibility 2 - use the 'setValueNested' function
NMapobj = setValueNested(NMapobj, {key1, key2, key3}, 10);
NMapobj = setValueNested(NMapobj, {key1, key2, key4}, 5);
Retrieve values from the Map (2 possibilites):

%possibility 1:
value1 = NMapobj(key1, key2, key3); %returns '10'
value2 = NMapobj({key1, key2, key4}); %return '5'

%possibility 2 - using 'getValueNested' - function
value1 = getValueNested(NMapobj ,{key1, key2, key3}); %returns '10'
value2 = getValueNested(NMapobj ,{key1, key2, key4}); %returns '5'
Call superclass Methods (see containers.Map: eg isKey, keys, length, remove, size, values):

NMapobj.superclassMethod()
Retrieve properties (see containers.Map: eg. Count, KeyType, ValueType):

NMapobj.property
Delete Entries:

NMapobj('Key') = [];
remove(NMapobj, 'Key');
This function is a subclass from Matlabs 'containers.map'-class:

ATTENTION: Cell-arrays can not be assigned to the map

NMapobj('key1', 'key2', 'key3') = {'a', 'cell', 'array'}; %throws error see: https://github.com/RolandRitt/Matlab-NestedMap

Zitieren als

Roland (2024). RolandRitt/Matlab-NestedMap (https://github.com/RolandRitt/Matlab-NestedMap), GitHub. Abgerufen .

Kompatibilität der MATLAB-Version
Erstellt mit R2016b
Kompatibel mit allen Versionen
Plattform-Kompatibilität
Windows macOS Linux
Kategorien
Mehr zu Dictionaries finden Sie in Help Center und MATLAB Answers

Community Treasure Hunt

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

Start Hunting!

Versionen, die den GitHub-Standardzweig verwenden, können nicht heruntergeladen werden

Version Veröffentlicht Versionshinweise
1.4.0.0

implemented 'isKey' method, to enable if a nested key is in the map, eg,:
*) M.isKey({Key1, Key2, Key3})
*) M.isKey(Key1, Key2, Key3)

1.3.0.0

remove entries by assinging empty array implemented:

1.2.0.0

Add '.' subsref for calling superclass-methods and properties

1.1.0.0

changed the class descripion and extended the test file

1.0.0.0

Um Probleme in diesem GitHub Add-On anzuzeigen oder zu melden, besuchen Sie das GitHub Repository.
Um Probleme in diesem GitHub Add-On anzuzeigen oder zu melden, besuchen Sie das GitHub Repository.