std::variant

GPTKB entity

Statements (50)
Predicate Object
gptkbp:instanceOf C++ standard library class template
gptkbp:accessibleBy std::get
std::get_if
std::visit
gptkbp:alternativeCount std::variant_size
gptkbp:alternativeIndexType std::size_t
gptkbp:alternativeType std::variant_alternative
gptkbp:canBeEmpty true
gptkbp:canBeValuelessByException true
gptkbp:cannotHoldAbstractTypes true
gptkbp:cannotHoldArrays true
gptkbp:cannotHoldReferences true
gptkbp:cannotHoldVoid true
gptkbp:defaultConstructsTo first alternative
gptkbp:definedIn <variant> header
gptkbp:hasNoDefaultAlternative true
https://www.w3.org/2000/01/rdf-schema#label std::variant
gptkbp:introducedIn gptkb:C++17
gptkbp:isAssignableIfAllAlternativesAreAssignable true
gptkbp:isComparableIfAllAlternativesAreComparable true
gptkbp:isConstructibleIfAnyAlternativeIsConstructible true
gptkbp:isCopyAssignableIfAllAlternativesAreCopyAssignable true
gptkbp:isCopyConstructibleIfAllAlternativesAreCopyConstructible true
gptkbp:isDestructibleIfAllAlternativesAreDestructible true
gptkbp:isMoveAssignableIfAllAlternativesAreMoveAssignable true
gptkbp:isMoveConstructibleIfAllAlternativesAreMoveConstructible true
gptkbp:isNothrowCopyAssignableIfAllAlternativesAreNothrowCopyAssignable true
gptkbp:isNothrowCopyConstructibleIfAllAlternativesAreNothrowCopyConstructible true
gptkbp:isNothrowDestructibleIfAllAlternativesAreNothrowDestructible true
gptkbp:isNothrowMoveAssignableIfAllAlternativesAreNothrowMoveAssignable true
gptkbp:isNothrowMoveConstructibleIfAllAlternativesAreNothrowMoveConstructible true
gptkbp:isNothrowSwappableIfAllAlternativesAreNothrowSwappable true
gptkbp:isSwappableIfAllAlternativesAreSwappable true
gptkbp:isTriviallyCopyableIfAllAlternativesAre true
gptkbp:isTriviallyCopyAssignableIfAllAlternativesAre true
gptkbp:isTriviallyDestructibleIfAllAlternativesAre true
gptkbp:isTriviallyMoveAssignableIfAllAlternativesAre true
gptkbp:isTriviallyMoveConstructibleIfAllAlternativesAre true
gptkbp:isTypeSafe true
gptkbp:namespace std
gptkbp:purpose type-safe union
gptkbp:supports comparison
movement
assignment
copy
multiple alternative types
gptkbp:throwsOnInvalidAccess std::bad_variant_access
gptkbp:bfsParent gptkb:C++17
gptkb:Boost.Variant
gptkbp:bfsLayer 6