Flutter Engine
The Flutter Engine
Public Member Functions | Friends | List of all members
dart::ArrayOfTuplesView< EnumType, TupleT, kStartOffset >::TupleView Class Reference

#include <object.h>

Public Member Functions

 TupleView (const Array &array, intptr_t index)
 
template<EnumType kElement, std::memory_order order = std::memory_order_relaxed>
std::tuple_element< kElement, TupleT >::type::ObjectPtrType Get () const
 
template<EnumType kElement, std::memory_order order = std::memory_order_relaxed>
void Set (const typename std::tuple_element< kElement, TupleT >::type &value) const
 
intptr_t index () const
 

Friends

class Iterator
 

Detailed Description

template<typename EnumType, typename TupleT, int kStartOffset = 0>
class dart::ArrayOfTuplesView< EnumType, TupleT, kStartOffset >::TupleView

Definition at line 13468 of file object.h.

Constructor & Destructor Documentation

◆ TupleView()

template<typename EnumType , typename TupleT , int kStartOffset = 0>
dart::ArrayOfTuplesView< EnumType, TupleT, kStartOffset >::TupleView::TupleView ( const Array array,
intptr_t  index 
)
inline

Definition at line 13470 of file object.h.

13471 : array_(array), index_(index) {}

Member Function Documentation

◆ Get()

template<typename EnumType , typename TupleT , int kStartOffset = 0>
template<EnumType kElement, std::memory_order order = std::memory_order_relaxed>
std::tuple_element< kElement, TupleT >::type::ObjectPtrType dart::ArrayOfTuplesView< EnumType, TupleT, kStartOffset >::TupleView::Get ( ) const
inline

Definition at line 13475 of file object.h.

13476 {
13477 using object_type = typename std::tuple_element<kElement, TupleT>::type;
13478 return object_type::RawCast(array_.At<order>(index_ + kElement));
13479 }
GLenum type
ObjectPtr At(intptr_t index) const
Definition: object.h:10875

◆ index()

template<typename EnumType , typename TupleT , int kStartOffset = 0>
intptr_t dart::ArrayOfTuplesView< EnumType, TupleT, kStartOffset >::TupleView::index ( ) const
inline

Definition at line 13488 of file object.h.

13488{ return (index_ - kStartOffset) / EntrySize; }
static constexpr intptr_t EntrySize
Definition: object.h:13464

◆ Set()

template<typename EnumType , typename TupleT , int kStartOffset = 0>
template<EnumType kElement, std::memory_order order = std::memory_order_relaxed>
void dart::ArrayOfTuplesView< EnumType, TupleT, kStartOffset >::TupleView::Set ( const typename std::tuple_element< kElement, TupleT >::type value) const
inline

Definition at line 13483 of file object.h.

13484 {
13485 array_.SetAt<order>(index_ + kElement, value);
13486 }
void SetAt(intptr_t index, const Object &value) const
Definition: object.h:10880
uint8_t value

Friends And Related Function Documentation

◆ Iterator

template<typename EnumType , typename TupleT , int kStartOffset = 0>
friend class Iterator
friend

Definition at line 13494 of file object.h.


The documentation for this class was generated from the following file: