Intel® oneAPI DPC++/C++ Compiler Developer Guide and Reference

ID 767253
Date 3/22/2024
Public

A newer version of this document is available. Customers should click here to go to the newest version.

Document Table of Contents

sdlt::bounds Template Function

Factory function provided for creation of bounds_t objects. #include <sdlt/bounds.h>

Syntax

template<typename LowerT, typename UpperT>
auto bounds(LowerT a_lower, UpperT a_upper)

Description

In order to make creation of objects of bounds_t cleaner the factory function bounds is provided. It basically enables LowerT and UpperT to be deduced from the arguments passed into it.

Template Argument

Description

typename LowerT = int

Type of lower bound.

Requirements: type is int, or fixed<NumberT>, or aligned<AlignmentT>

typename UpperT = int

Type of upper bound.

Requirements: type is int, or fixed<NumberT>, or aligned<AlignmentT>

Returns:

The correctly typed bounds_t<LowerT, UpperT> corresponding to types of a_lower and a_upper passed to the factory function.

Example:

Compare two ways of instantiating a bounds:

bounds_t<fixed<0>, aligned<16>> my_bounds1(0_fixed, aligned<16>(upper))
auto my_bounds2 = bounds_t<fixed<0>, aligned<16>>(0_fixed, aligned<16>(upper))

With the factory function:

auto my_bounds = bounds(0_fixed, aligned<16>(upper))