JUCE-7.0.12-0-g4f43011b96 JUCE-7.0.12-0-g4f43011b96
JUCE — C++ application framework with suport for VST, VST3, LV2 audio plug-ins

« « « Anklang Documentation
Loading...
Searching...
No Matches
Classes | Namespaces | Typedefs | Functions | Variables
juce_Enumerate.h File Reference

Go to the source code of this file.

Classes

struct  juce::Enumerated< Index, Value >
 Returned when dereferencing an EnumerateIterator. More...
 
class  juce::EnumerateIterator< Iter, Index >
 An iterator that wraps some other iterator, keeping track of the relative position of that iterator based on calls to arithmetic operators such as operator++(), operator--(), operator+(), and operator-(). More...
 
class  juce::IteratorPair< Begin, End >
 Wraps a pair of iterators, providing member begin() and end() functions that return those iterators. More...
 

Namespaces

namespace  juce
 JUCE Namespace.
 

Typedefs

template<typename Range >
using juce::detail::withAdlSize::AdlSize = decltype(size(std::declval< Range >()))
 
template<typename Range >
using juce::detail::withAdlSize::AdlSignedSize = std::common_type_t< std::ptrdiff_t, std::make_signed_t< AdlSize< Range > > >
 

Functions

template<typename Begin , typename End = Begin>
constexpr auto juce::makeRange (Begin begin, End end)
 Given two iterators "begin" and "end", returns an IteratorPair with a member begin() and end() function.
 
template<typename Range , typename Index = detail::withAdlSize::AdlSignedSize<Range>>
constexpr auto juce::enumerate (Range &&range, Index startingValue={})
 Given a range and an optional starting offset, returns an IteratorPair that holds EnumerateIterators wrapping the begin() and end() of the range.
 

Variables

template<typename T , typename = void>
constexpr auto juce::detail::canPreDecrement
 
template<typename T , typename I , typename = void>
constexpr auto juce::detail::canAddAssign
 
template<typename T , typename I , typename = void>
constexpr auto juce::detail::canSubAssign
 
template<typename T , typename I , typename = void>
constexpr auto juce::detail::canAdd
 
template<typename T , typename I , typename = void>
constexpr auto juce::detail::canSub
 
template<typename T , typename I , typename = void>
constexpr auto juce::detail::canLessThan
 
template<typename T , typename I , typename = void>
constexpr auto juce::detail::canLessThanEqual
 
template<typename T , typename I , typename = void>
constexpr auto juce::detail::canGreaterThan
 
template<typename T , typename I , typename = void>
constexpr auto juce::detail::canGreaterThanEqual
 

Class Documentation

◆ juce::Enumerated

struct juce::Enumerated
template<typename Index, typename Value>
struct juce::Enumerated< Index, Value >

Returned when dereferencing an EnumerateIterator.

Allows querying the index associated with an element, along with a reference to the element itself.

You should never need to construct an instance of this type yourself. Instead, use the enumerate() function to construct a range that can be enumerated.

See also
enumerate() @tags{Core}

Definition at line 109 of file juce_Enumerate.h.

Class Members
Index index
Value value

Typedef Documentation

◆ AdlSignedSize

template<typename Range >
using juce::detail::withAdlSize::AdlSignedSize = typedef std::common_type_t<std::ptrdiff_t, std::make_signed_t<AdlSize<Range> >>

Definition at line 91 of file juce_Enumerate.h.

◆ AdlSize

template<typename Range >
using juce::detail::withAdlSize::AdlSize = typedef decltype (size (std::declval<Range>()))

Definition at line 88 of file juce_Enumerate.h.

Variable Documentation

◆ canAdd

template<typename T , typename I , typename = void>
constexpr auto juce::detail::canAdd
constexpr

Definition at line 48 of file juce_Enumerate.h.

◆ canAddAssign

template<typename T , typename I , typename = void>
constexpr auto juce::detail::canAddAssign
constexpr

Definition at line 36 of file juce_Enumerate.h.

◆ canGreaterThan

template<typename T , typename I , typename = void>
constexpr auto juce::detail::canGreaterThan
constexpr

Definition at line 72 of file juce_Enumerate.h.

◆ canGreaterThanEqual

template<typename T , typename I , typename = void>
constexpr auto juce::detail::canGreaterThanEqual
constexpr

Definition at line 78 of file juce_Enumerate.h.

◆ canLessThan

template<typename T , typename I , typename = void>
constexpr auto juce::detail::canLessThan
constexpr

Definition at line 60 of file juce_Enumerate.h.

◆ canLessThanEqual

template<typename T , typename I , typename = void>
constexpr auto juce::detail::canLessThanEqual
constexpr

Definition at line 66 of file juce_Enumerate.h.

◆ canPreDecrement

template<typename T , typename = void>
constexpr auto juce::detail::canPreDecrement
constexpr

Definition at line 30 of file juce_Enumerate.h.

◆ canSub

template<typename T , typename I , typename = void>
constexpr auto juce::detail::canSub
constexpr

Definition at line 54 of file juce_Enumerate.h.

◆ canSubAssign

template<typename T , typename I , typename = void>
constexpr auto juce::detail::canSubAssign
constexpr

Definition at line 42 of file juce_Enumerate.h.