OGLplus  (0.59.0) a C++ wrapper for rendering APIs

types.hpp File Reference
#include "is_within_limits.hpp"
#include "type_identity.hpp"
#include "valid_if/nonnegative.hpp"
#include <cassert>
#include <cstdint>
#include <limits>
#include <type_traits>

Go to the source code of this file.

Namespaces

 eagine
 Common code is placed in this namespace.
 

Typedefs

using eagine::byte = unsigned char
 Byte type alias.
 
using eagine::std_align_t = std::size_t
 Alignment type used by std.
 
using eagine::std_size_t = std::size_t
 Size type used by std.
 
using eagine::span_size_t = std::ptrdiff_t
 Signed span size type used by eagine.
 
using eagine::valid_span_size = valid_if_nonnegative< span_size_t >
 Valid size type.
 

Functions

template<typename T , typename = std::enable_if_t<std::is_integral_v<T>>>
static constexpr auto eagine::std_align (T v) noexcept
 Converts argument to std alignment type.
 
template<typename T , typename = std::enable_if_t<std::is_integral_v<T>>>
static constexpr auto eagine::std_size (T v) noexcept
 Converts argument to std size type.
 
template<typename T , typename = std::enable_if_t<std::is_integral_v<T>>>
static constexpr auto eagine::span_size (T v) noexcept
 Converts argument to span size type.
 
template<typename T >
static constexpr auto eagine::span_align_of (type_identity< T >={}) noexcept
 Returns the byte alignment of type T as span_size_t.
 
template<typename T >
static constexpr auto eagine::span_size_of (type_identity< T >={}) noexcept
 Returns the byte size of type T as span_size_t.
 
template<typename T , typename S >
static constexpr auto eagine::span_size_of (S n, type_identity< T >={}) noexcept
 Returns the total byte size of n elements of type T as span_size_t.
 

Detailed Description

Copyright Matus Chochlik. Distributed under the Boost Software License, Version 1.0. See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt


Copyright © 2015-2021 Matúš Chochlík.
<chochlik -at -gmail.com>
Documentation generated on Tue Apr 13 2021 by Doxygen (version 1.8.17).