3#ifndef AWKWARD_BUILDEROPTIONS_H_
4#define AWKWARD_BUILDEROPTIONS_H_
19 template <
typename... OPTIONS>
21 static constexpr std::size_t
value =
sizeof...(OPTIONS);
31 template <std::
size_t INDEX>
33 typename std::tuple_element<INDEX,
decltype(
OptionsPack())>::type;
54 template <std::
size_t INDEX>
55 const OptionType<INDEX>&
57 return std::get<INDEX>(
pars);
Definition: ArrayBuilder.h:14
Container for all configuration options needed by ArrayBuilder, GrowableBuffer, LayoutBuilder and the...
Definition: BuilderOptions.h:20
int64_t initial() const noexcept
The initial number of reserved entries for a GrowableBuffer.
Definition: BuilderOptions.h:41
static constexpr std::size_t value
Definition: BuilderOptions.h:21
Options(OPTIONS... options)
Creates an Options tuple from a full set of parameters.
Definition: BuilderOptions.h:36
double resize() const noexcept
The factor with which a GrowableBuffer is resized when its length reaches its reserved.
Definition: BuilderOptions.h:49
typename std::tuple_element< INDEX, decltype(OptionsPack())>::type OptionType
Definition: BuilderOptions.h:33
OptionsPack pars
Definition: BuilderOptions.h:60
typename std::tuple< OPTIONS... > OptionsPack
Definition: BuilderOptions.h:23
const OptionType< INDEX > & option() const noexcept
Access to all other options.
Definition: BuilderOptions.h:56