GXml.HashMap – GXml-0.20 – Vala Binding Reference

GXml.HashMap – GXml-0.20 Reference Manual

# 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));
         }
       }
      }

Namespace: GXml
Package: GXml-0.20

## Content:

### Properties:

- public string attribute_key { get; set construct; }
  An attribute's name in items to be added and used to retrieve elements as key.
- public Set<string> keys_set { owned get; }

### Creation methods:

- public HashMap ()

### 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 bool has_key (string key)
  Returns true if @key is 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 DomElement? item (string key)
- 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

- @foreach
- _element
- _items_name
- _items_type
- _nodes_index
- append

- clear
- element
- initialize
- initialize_element
- items_name

- items_type
- iterator
- nodes_index
- search
- validate_append

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

- attribute_key
- has_key

- item

- keys_set

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

- iterator

All known members inherited from interface GXml.Collection

- append
- clear
- create_item
- element

- get_item
- initialize
- items_name
- items_type

- length
- nodes_index
- search
- validate_append