BloombergLP::bslstl::Function_SmallObjectOptimization::IsInplaceFunc

This class is a Boolean metafunction that determines whether or not the specified FN template parameter should be allocated within the footprint of the InplaceBuffer (i.e., using the small-object optimization.)

Synopsis

Declared in <bslstl_function_smallobjectoptimization.h>

template<class FN>
struct IsInplaceFunc
    : bsl::integral_constant<bool, SooFuncSize<FN>::value <= sizeof(InplaceBuffer)>

Description

# Implementation Note In the future, InplaceFunc should also consider the alignment of FN in its determination of whether or not bsl::function will use the small-object optimization. However, bsl::function currently has no way to specify alignment when it allocates memory.

Base Classes

NameDescription
bsl::integral_constant<bool, SooFuncSize<FN>::value <= sizeof(InplaceBuffer)>Metafunction representing a compile-time constant of the specified (template parameter) t_TYPE with the specified (template parameter) t_VALUE.

Type Aliases

NameDescription
type Alias for this integral_constant specialization.
value_type

Member Functions

NameDescription
operator() Return a copy of the template argument t_VALUE.
operator value_type

Static Data Members

Name
value