CAMP 1.0.0
Chemistry Across Multiple Phases
|
The property_t structure and associated subroutines. More...
Data Types | |
interface | property_link_t |
Property link data. More... | |
type | property_ptr |
interface | property_t |
Property data. More... | |
Functions/Subroutines | |
type(property_t) function, pointer | constructor () |
Constructor for property_t. | |
recursive subroutine | load (this, json, j_obj, as_object, owner_name, allow_duplicates) |
Load a property set from input data. | |
recursive subroutine | put (this, key, val, allow_duplicates, owner_name) |
Put an element in the property data set. | |
logical function | get_key (this, key) |
Get the key name of the element currently pointed to by the iterator. Returns true if the iterator points to a key-value pair; false indicates the list is empty, the iterator was never reset, or the end of the list has been reached. Array elements return true, but have an empty key name. | |
logical function | get_int (this, key, val) |
Get an integer value. The return value is true if the key-value pair was found, and false otherwise. If no key name is specified, the current value of the iterator is returned. In this case true indicates a current key-value exists; false indicates the list is empty, the iterator was never reset, or the end of the list has been reached. | |
logical function | get_real (this, key, val) |
Get a real value. The return value is true if the key-value pair was found, and false otherwise. If no key name is specified, the current value of the iterator is returned. In this case true indicates a current key-value exists; false indicates the list is empty, the iterator was never reset, or the end of the list has been reached. | |
logical function | get_logical (this, key, val) |
Get a logical value. The return value is true if the key-value pair was found, and false otherwise. If no key name is specified, the current value of the iterator is returned. In this case true indicates a current key-value exists; false indicates the list is empty, the iterator was never reset, or the end of the list has been reached. | |
logical function | get_string (this, key, val) |
Get a string value. The return value is true if the key-value pair was found, and false otherwise. If no key name is specified, the current value of the iterator is returned. In this case true indicates a current key-value exists; false indicates the list is empty, the iterator was never reset, or the end of the list has been reached. | |
logical function | get_property_t (this, key, val) |
Get a property sub-set. The return value is true if the key-value pair was found, and false otherwise. If no key name is specified, the current value of the iterator is returned. In this case true indicates a current key-value exists; false indicates the list is empty, the iterator was never reset, or the end of the list has been reached. | |
integer(kind=i_kind) function | get_size (this) |
Get the number of elements in the property set. | |
subroutine | iter_reset (this) |
Initialize the iterator. It will now point to the first property in the dataset, or be NULL in the case of an empty property dataset. | |
subroutine | iter_next (this) |
Increment the interator. | |
elemental subroutine | move (this, dest) |
Move data from one property_t instance to another. | |
subroutine | update (this, source, owner_name) |
Update this property_t instance with data from another instance. | |
recursive subroutine | do_print (this, file_unit) |
Print the contents of a property set. | |
elemental subroutine | finalize (this) |
Finalize a property_t variable. | |
type(property_link_t) function, pointer | get (this, key) |
Find a key-value pair by key name. Returns a null pointer if the key name is not found. | |
type(property_link_t) function, pointer | link_constructor (key, val) |
Constructor for property_link_t. | |
character(:) function, allocatable | key (this) |
Get the key name of a property. | |
subroutine | set_value (this, val) |
Set the value of a property key-value pair. | |
integer(kind=i_kind) function | value_int (this) |
Get the int value of a property. | |
real(kind=dp) function | value_real (this) |
Get the real value of a property. | |
logical function | value_logical (this) |
Get the logical value of a property. | |
character(len=:) function, allocatable | value_string (this) |
Get the string value of a property. | |
type(property_t) function, pointer | value_property_t (this) |
Get the property_t value of a property. | |
recursive subroutine | link_do_print (this, suffix, file_unit) |
Print the contents of a property key-value pair. | |
elemental subroutine | link_finalize (this) |
Finalize the property_link_t variable. | |
The property_t structure and associated subroutines.
|
private |
|
private |
Print the contents of a property set.
[in] | this | Property dataset |
[in] | file_unit | File unit for output |
Definition at line 626 of file property.F90.
|
private |
Finalize a property_t variable.
[in,out] | this | Property dataset |
Definition at line 655 of file property.F90.
|
private |
Find a key-value pair by key name. Returns a null pointer if the key name is not found.
[in] | this | Property dataset |
[in] | key | Key name to search for |
Definition at line 675 of file property.F90.
|
private |
Get an integer value. The return value is true if the key-value pair was found, and false otherwise. If no key name is specified, the current value of the iterator is returned. In this case true indicates a current key-value exists; false indicates the list is empty, the iterator was never reset, or the end of the list has been reached.
[in] | this | Property dataset |
[in] | key | Key name to search for |
[out] | val | Property value |
Definition at line 381 of file property.F90.
|
private |
Get the key name of the element currently pointed to by the iterator. Returns true if the iterator points to a key-value pair; false indicates the list is empty, the iterator was never reset, or the end of the list has been reached. Array elements return true, but have an empty key name.
[in] | this | Property dataset |
[out] | key | Key name |
Definition at line 360 of file property.F90.
|
private |
Get a logical value. The return value is true if the key-value pair was found, and false otherwise. If no key name is specified, the current value of the iterator is returned. In this case true indicates a current key-value exists; false indicates the list is empty, the iterator was never reset, or the end of the list has been reached.
[in] | this | Property dataset |
[in] | key | Key name to search for |
[out] | val | Property value |
Definition at line 443 of file property.F90.
|
private |
Get a property sub-set. The return value is true if the key-value pair was found, and false otherwise. If no key name is specified, the current value of the iterator is returned. In this case true indicates a current key-value exists; false indicates the list is empty, the iterator was never reset, or the end of the list has been reached.
[in] | this | Property dataset |
[in] | key | Key name to search for |
[out] | val | Property value |
Definition at line 505 of file property.F90.
|
private |
Get a real value. The return value is true if the key-value pair was found, and false otherwise. If no key name is specified, the current value of the iterator is returned. In this case true indicates a current key-value exists; false indicates the list is empty, the iterator was never reset, or the end of the list has been reached.
[in] | this | Property dataset |
[in] | key | Key name to search for |
[out] | val | Property value |
Definition at line 412 of file property.F90.
|
private |
Get the number of elements in the property set.
[in] | this | Property dataset |
Definition at line 533 of file property.F90.
|
private |
Get a string value. The return value is true if the key-value pair was found, and false otherwise. If no key name is specified, the current value of the iterator is returned. In this case true indicates a current key-value exists; false indicates the list is empty, the iterator was never reset, or the end of the list has been reached.
[in] | this | Property dataset |
[in] | key | Key name to search for |
[out] | val | Property value |
Definition at line 474 of file property.F90.
|
private |
Increment the interator.
[in,out] | this | Property dataset |
Definition at line 567 of file property.F90.
|
private |
Initialize the iterator. It will now point to the first property in the dataset, or be NULL in the case of an empty property dataset.
[in,out] | this | Property dataset |
Definition at line 555 of file property.F90.
|
private |
Get the key name of a property.
[in] | this | Property key-value pair |
Definition at line 725 of file property.F90.
|
private |
Constructor for property_link_t.
[in] | key | Key name |
[in] | val | New value |
Definition at line 706 of file property.F90.
|
private |
Print the contents of a property key-value pair.
[in] | this | Property key-value pair |
[in] | suffix | Text to append to the end of the line |
[in] | file_unit | File unit for output |
Definition at line 900 of file property.F90.
|
private |
Finalize the property_link_t variable.
[in,out] | this | Property key-value pair |
Definition at line 942 of file property.F90.
|
private |
Load a property set from input data.
[in,out] | this | Property dataset |
[in] | json | JSON core |
[in] | j_obj | JSON object |
[in] | as_object | Set to true if j_obj is a json object to parse, adding all child key-value pairs to the data set, or false if j_obj is a single key-value pair to add to the data set |
[in] | owner_name | Name of the owner of the property set. For use in error messages |
[in] | allow_duplicates | Flag to indicate whether to allow duplicate keys. Defaults to false |
Definition at line 145 of file property.F90.
|
private |
Move data from one property_t instance to another.
[in,out] | this | Property dataset to move |
[in,out] | dest | Property dataset destination |
Definition at line 583 of file property.F90.
|
private |
Put an element in the property data set.
[in,out] | this | Property data set |
[in] | key | New key |
[in] | val | New value |
[in] | allow_duplicates | Flag indicating whether to allow duplicate keys |
[in] | owner_name | Name of owner of the property set. For use in error messages |
Definition at line 265 of file property.F90.
|
private |
Set the value of a property key-value pair.
[in,out] | this | Property key-value pair |
[in] | val | New value |
Definition at line 739 of file property.F90.
|
private |
Update this property_t instance with data from another instance.
[in,out] | this | Property dataset to update |
[in,out] | source | Property dataset to update from |
[in] | owner_name | Name of owner of the property set. For use in error messages |
Definition at line 604 of file property.F90.
|
private |
Get the int value of a property.
[in] | this | Property key-value pair |
Definition at line 783 of file property.F90.
|
private |
Get the logical value of a property.
[in] | this | Property key-value pair |
Definition at line 831 of file property.F90.
|
private |
Get the property_t value of a property.
[in] | this | Property key-value pair |
Definition at line 877 of file property.F90.
|
private |
Get the real value of a property.
[in] | this | Property key-value pair |
Definition at line 806 of file property.F90.
|
private |
Get the string value of a property.
[in] | this | Property key-value pair |
Definition at line 854 of file property.F90.