/*!
* @concept AlphabetWithUnknownValueConcept
*
* @headerfile <seqan/basic.h>
*
* @extends AlphabetConcept
*
* @brief An alphabet which includes a specific "unknown" character.
*
* @fn AlphabetWithUnknownValueConcept#unknownValue
*
* @brief Return the "unknown" value from an alphabet.
*
* @signature T unknownValue<T>();
*
* @tparam T The alphabet type to query the unknown value from.
*
* @return TReturn The "unknown" value.
*
* @see AlphabetWithUnknownValueConcept#unknownValueImpl
*
* @fn AlphabetWithUnknownValueConcept#unknownValueImpl
*
* @brief Implements unknownValue.
*
* @signature T gapValueImpl(valuePointerTag)
*
* @param[in] valuePointerTag A pointer that is used as a tag to specify the
* value type. The pointer needs not to point to a
* valid object, so it is possible to use a null
* pointer here.
*
* @return TReturn A "unknown" character.
*
* This function implements unknownValue. It is recommended to use gapValue
* rather than <tt>gapValueImpl</tt>.
*
* @see AlphabetWithUnknownValueConcept#unknownValue
*/