/*!
* @concept PropertyMapConcept
*
* @headerfile <seqan/graph_types.h>
*
* @brief Concept for maps from contained elements (such as graph vertices or
* index nodes) to values.
*
* @signature concept PropertyMapConcept;
*
* @mfn PropertyMapConcept#Value
*
* @brief Returns the value type of the property map.
*
* @signature Value<TPropertyMap>::Type
*
* @tparam TPropertyMap The property map to query.
*
* @return Type The element type of the container.
*
* @see PropertyMapConcept#Value
*
* @mfn PropertyMapConcept#GetValue
*
* @brief Returns the get-value type of the property map.
*
* @signature GetValue<TPropertyMap>::Type
*
* @tparam TPropertyMap The property map to query.
*
* @return Type The get-value type of the container.
*
* @see PropertyMapConcept#GetValue
*
* @mfn PropertyMapConcept#Reference
*
* @brief Returns the reference type of the property map.
*
* @signature Reference<TPropertyMap>::Type
*
* @tparam TPropertyMap The property map to query.
*
* @see PropertyMapConcept#Reference
*
* @fn PropertyMapConcept#assignProperty
*
* @brief Assigns a property to an item in the property map.
*
* @signature void assignProperty(pm, d, val);
*
* @param[in,out] pm The property map
* @param[in] d A vertex or edge descriptor that identifies the item in the
* property map.
* @param[in] val The new value, where the type of the new value must match the
* value type of the property map.
*
* @fn PropertyMapConcept#property
*
* @brief Accesses the property of an item in the property map.
*
* @signature TReference property(pm, d);
*
* @param[in,out] pm The property map.
* @param[in] d A vertex or edge descriptor that identifies the item in the
* property map.
*
* @return TReference Reference to the item in the property map of type @link
* Reference @endlink.
*
* @fn PropertyMapConcept#getProperty
*
* @brief Get method for an item's property.
*
* @signature TGetValue getProperty(pm, d);
*
* @param[in,out] pm The property map.
* @param[in] d A vertex or edge descriptor that identifies the item in the
* property map.
*
* @return TGetValue Get-value to the item in the property map of type @link
* PropertyMapConcept#GetValue GetValue @endlink.
*
* @fn PropertyMapConcept#resize
*
* @brief Resize a sequence.
*
* @signature void resize(pm, len[, val]);
*
* @param[in,out] seq Sequence to resize.
* @param[in] len Length to resize <tt>seq</tt> to.
* @param[in] val When increasing the size, <tt>val</tt> is used to fill new
* entries. When omitted, <tt>TValue()</tt> is used where
* <tt>TValue</tt> is the @link ContainerConcept#Value @endlink
* type of the sequence.
*
* @see StringConcept#resize
*/