Metafunction indicating whether the (template parameter) t_TYPE has pointer‐like semantics.

Synopsis

Declared in <bslmf_haspointersemantics.h>

Base Classes

Name

Description

bsl::integral_constant<bool, bsl::is_pointer<t_TYPE>::value || DetectNestedTrait<t_TYPE, HasPointerSemantics>::value>

Metafunction representing a compile‐time constant of the specified (template parameter) t_TYPE with the specified (template parameter) t_VALUE.

Type Aliases

Name

Description

type

Alias for this integral_constant specialization.

value_type

Alias for the (template parameter) t_TYPE.

Member Functions

Name

Description

operator()

Return a copy of the template argument t_VALUE.

operator t_TYPE

Return a copy of the template argument t_VALUE.

Static Data Members

Name

Description

value

The compile‐time constant value of this metafunction.

Specializations

Name

Description

HasPointerSemantics<bslma::ManagedPtr<TARGET_TYPE>>

Trait specialization: ManagedPtr has pointer semantics.

HasPointerSemantics<std::auto_ptr<t_POINTED_TO_TYPE>>

HasPointerSemantics<bsl::shared_ptr<ELEMENT_TYPE>>

Trait specialization: shared_ptr has pointer semantics.

HasPointerSemantics<std::shared_ptr<t_POINTED_TO_TYPE>>

Trait specialization: std::shared_ptr has pointer semantics.

HasPointerSemantics<std::unique_ptr<t_POINTED_TO_TYPE>>

Trait specialization: std::unique_ptr has pointer semantics.

Created with MrDocs