Gets the element at the given index, if exists and can be casted to T. Otherwise evaluates and returns defaultValue.
Gets the tag's value at the given index, if it exists and can be casted to T. Otherwise returns defaultValue.
Checks whether or not a value is in the associative array.
Checks if the key is associated to a value and that the value is of the same type of T.
Gets a pointer to the element at the given index.
Gets the array of named tags (without the keys). To get the associative array of named tags use the property value.
Gets the element at the given index.
Sets the value at the given index. If the tag's name is different from the given index, the tag's name will be changed to the given index's one.
Sets the value using the named tag's name as the index.
Removed the given index from the array, if set.
Creates an exact duplicate of the tag.
Checks whether or not the array is empty (its length is equal to 0).
Gets the length of the array (or the number of NamedTags in it).
Gets the keys (indexes of the array).
Gets the tag's type.
Indicates whether the tag has a name.
Gets the tag's name, if there's one.
Creates a NamedTag maintaing the tag's properties.
Encodes the tag's body.
Decodes the tag's body.
Encodes the tag's value as json.
Encodes the tag a human-readable string.
auto compound = new Compound(); compound["string"] = new String("test"); compound["byte"] = new Byte(18);
Associative array of named tags (that can be of different types).