HashMap
Object Hierarchy:
Description:
public class HashMap :
BaseCollection,
Map
A class implementing Collection to store references to child
DomElement of
Collection.element, using an attribute in items as key or
MappeableElement.get_map_key method if implemented by items to be added. If key is not defined in node, it is not added; but keeps
it as a child node of actual Collection.element.
If GXml.Element to be added is of type
Collection.items_type and implements
MappeableElement, you should set GXml.HashMap.attribute_key
to
null in order to use returned value of
MappeableElement.get_map_key as key.
public class YourObject : GXml.Element {
[Description (nick="::Name")]
public string name { get; set; }
}
public class YourList : GXml.HashMap {
construct {
try { initialize_with_key (typeof (YourObject),"Name"); }
catch (GLib.Error e) {
warning ("Initialization error for collection type: %s : %s"
.printf (get_type ().name(), e.message));
}
}
}
Content:
Creation methods:
Methods:
- public DomElement? @get (string key)
Returns an DomElement
in the collection using a string key.
- public override void clear ()
- public List<string> get_keys ()
Returns list of keys used in collection.
- public void initialize_element_with_key (Element element, Type items_type, string attribute_key) throws Error
Convenient function to initialize a GXml.HashMap
collection, using given element, items' type and name.
- public void initialize_with_key (Type items_type, string attribute_key) throws Error
Convenient function to initialize a GXml.HashMap
collection, using given element, items' type and name.
- public override bool validate_append (int index, DomElement element) throws Error
Validates if given element has a GXml.HashMap.attribute_key
set, if so adds a new key pointing to given index and returns true.
Fields:
- protected string _attribute_key
Element's attribute name used to refer of container's element. You
should define it at construction time our set it as a construction property.
- protected HashMap<string,int> _hashtable
A hashtable with all keys as string to node's index referred. Don't
modify it manually.
Inherited Members:
All known members inherited from class GXml.BaseCollection
All known members inherited from class GLib.Object
- @get
- @new
- @ref
- @set
- add_toggle_ref
- add_weak_pointer
- bind_property
- connect
- constructed
- disconnect
- dispose
- dup_data
- dup_qdata
- force_floating
- freeze_notify
- get_class
- get_data
- get_property
- get_qdata
- get_type
- getv
- interface_find_property
- interface_install_property
- interface_list_properties
- is_floating
- new_valist
- new_with_properties
- newv
- notify
- notify_property
- ref_count
- ref_sink
- remove_toggle_ref
- remove_weak_pointer
- replace_data
- replace_qdata
- set_data
- set_data_full
- set_property
- set_qdata
- set_qdata_full
- set_valist
- setv
- steal_data
- steal_qdata
- thaw_notify
- unref
- watch_closure
- weak_ref
- weak_unref
All known members inherited from interface GXml.Map
All known members inherited from interface Gee.Traversable
- @foreach
- all_match
- any_match
- chop
- element_type
- filter
- first_match
- flat_map
- fold
- map
- max
- min
- order_by
- scan
- stream
- tee
All known members inherited from interface Gee.Iterable
All known members inherited from interface GXml.Collection