#include <algorithm>#include <cstddef>#include <string>#include <type_traits>#include "absl/algorithm/algorithm.h"#include "absl/base/internal/throw_delegate.h"#include "absl/meta/type_traits.h"

Go to the source code of this file.
Namespaces | |
| absl | |
| absl::span_internal | |
Typedefs | |
| template<typename C > | |
| using | absl::span_internal::ElementT = typename ElementType< C >::type |
| template<typename From , typename To > | |
| using | absl::span_internal::EnableIfConvertibleTo = typename std::enable_if< IsConvertible< From, To >::value >::type |
| template<typename T > | |
| using | absl::span_internal::EnableIfMutable = typename std::enable_if<!std::is_const< T >::value, int >::type |
| template<typename T , typename C > | |
| using | absl::span_internal::HasData = std::is_convertible< absl::decay_t< decltype(GetData(std::declval< C & >()))> *, T *const * > |
| template<typename C > | |
| using | absl::span_internal::HasSize = std::is_integral< absl::decay_t< decltype(std::declval< C & >().size())> > |
Functions | |
| template<template< typename > class SpanT, typename T > | |
| bool | absl::span_internal::EqualImpl (SpanT< T > a, SpanT< T > b) |
| template<typename C > | |
| constexpr auto | absl::span_internal::GetData (C &c) noexcept -> decltype(GetDataImpl(c, 0)) |
| template<typename C > | |
| constexpr auto | absl::span_internal::GetDataImpl (C &c, char) noexcept -> decltype(c.data()) |
| char * | absl::span_internal::GetDataImpl (std::string &s, int) noexcept |
| template<template< typename > class SpanT, typename T > | |
| bool | absl::span_internal::LessThanImpl (SpanT< T > a, SpanT< T > b) |
| constexpr size_t | absl::span_internal::Min (size_t a, size_t b) noexcept |