ONE - On-device Neural Engine
Loading...
Searching...
No Matches
flatbuffers::Vector< T, SizeT > Class Template Reference

#include <vector.h>

Public Types

typedef VectorIterator< T, typename IndirectHelper< T >::mutable_return_type, uint8_t *, SizeT > iterator
 
typedef VectorConstIterator< T, typename IndirectHelper< T >::return_type, SizeT > const_iterator
 
typedef VectorReverseIterator< iteratorreverse_iterator
 
typedef VectorReverseIterator< const_iteratorconst_reverse_iterator
 
typedef flatbuffers::bool_constant< flatbuffers::is_scalar< T >::value > scalar_tag
 
typedef SizeT size_type
 
typedef IndirectHelper< T >::return_type return_type
 
typedef IndirectHelper< T >::mutable_return_type mutable_return_type
 
typedef return_type value_type
 

Public Member Functions

SizeT size () const
 
 FLATBUFFERS_ATTRIBUTE () SizeT Length() const
 
return_type Get (SizeT i) const
 
return_type operator[] (SizeT i) const
 
template<typename E >
GetEnum (SizeT i) const
 
template<typename U >
const U * GetAs (SizeT i) const
 
const StringGetAsString (SizeT i) const
 
const void * GetStructFromOffset (size_t o) const
 
iterator begin ()
 
const_iterator begin () const
 
iterator end ()
 
const_iterator end () const
 
reverse_iterator rbegin ()
 
const_reverse_iterator rbegin () const
 
reverse_iterator rend ()
 
const_reverse_iterator rend () const
 
const_iterator cbegin () const
 
const_iterator cend () const
 
const_reverse_iterator crbegin () const
 
const_reverse_iterator crend () const
 
void Mutate (SizeT i, const T &val)
 
void MutateOffset (SizeT i, const uint8_t *val)
 
mutable_return_type GetMutableObject (SizeT i) const
 
const uint8_t * Data () const
 
uint8_t * Data ()
 
const T * data () const
 
T * data ()
 
template<typename K >
return_type LookupByKey (K key) const
 
template<typename K >
mutable_return_type MutableLookupByKey (K key)
 

Static Public Attributes

static FLATBUFFERS_CONSTEXPR bool is_span_observable
 

Protected Member Functions

 Vector ()
 

Protected Attributes

SizeT length_
 

Detailed Description

template<typename T, typename SizeT = uoffset_t>
class flatbuffers::Vector< T, SizeT >

Definition at line 148 of file vector.h.

Member Typedef Documentation

◆ const_iterator

template<typename T , typename SizeT = uoffset_t>
typedef VectorConstIterator<T, typename IndirectHelper<T>::return_type, SizeT> flatbuffers::Vector< T, SizeT >::const_iterator

Definition at line 154 of file vector.h.

◆ const_reverse_iterator

template<typename T , typename SizeT = uoffset_t>
typedef VectorReverseIterator<const_iterator> flatbuffers::Vector< T, SizeT >::const_reverse_iterator

Definition at line 156 of file vector.h.

◆ iterator

template<typename T , typename SizeT = uoffset_t>
typedef VectorIterator<T, typename IndirectHelper<T>::mutable_return_type, uint8_t *, SizeT> flatbuffers::Vector< T, SizeT >::iterator

Definition at line 152 of file vector.h.

◆ mutable_return_type

template<typename T , typename SizeT = uoffset_t>
typedef IndirectHelper<T>::mutable_return_type flatbuffers::Vector< T, SizeT >::mutable_return_type

Definition at line 172 of file vector.h.

◆ return_type

template<typename T , typename SizeT = uoffset_t>
typedef IndirectHelper<T>::return_type flatbuffers::Vector< T, SizeT >::return_type

Definition at line 171 of file vector.h.

◆ reverse_iterator

template<typename T , typename SizeT = uoffset_t>
typedef VectorReverseIterator<iterator> flatbuffers::Vector< T, SizeT >::reverse_iterator

Definition at line 155 of file vector.h.

◆ scalar_tag

template<typename T , typename SizeT = uoffset_t>
typedef flatbuffers::bool_constant<flatbuffers::is_scalar<T>::value> flatbuffers::Vector< T, SizeT >::scalar_tag

Definition at line 159 of file vector.h.

◆ size_type

template<typename T , typename SizeT = uoffset_t>
typedef SizeT flatbuffers::Vector< T, SizeT >::size_type

Definition at line 170 of file vector.h.

◆ value_type

template<typename T , typename SizeT = uoffset_t>
typedef return_type flatbuffers::Vector< T, SizeT >::value_type

Definition at line 173 of file vector.h.

Constructor & Destructor Documentation

◆ Vector()

template<typename T , typename SizeT = uoffset_t>
flatbuffers::Vector< T, SizeT >::Vector ( )
protected

Member Function Documentation

◆ begin() [1/2]

template<typename T , typename SizeT = uoffset_t>
iterator flatbuffers::Vector< T, SizeT >::begin ( )
inline

Definition at line 205 of file vector.h.

205{ return iterator(Data(), 0); }
VectorIterator< T, typename IndirectHelper< T >::mutable_return_type, uint8_t *, SizeT > iterator
Definition vector.h:152
const uint8_t * Data() const
Definition vector.h:253

References flatbuffers::Vector< T, SizeT >::Data().

Referenced by tflite2circle::Offset< T >::build(), flatbuffers::Vector< T, SizeT >::cbegin(), flatbuffers::Vector< T, SizeT >::rend(), and flatbuffers::Vector< T, SizeT >::rend().

◆ begin() [2/2]

template<typename T , typename SizeT = uoffset_t>
const_iterator flatbuffers::Vector< T, SizeT >::begin ( ) const
inline

Definition at line 206 of file vector.h.

206{ return const_iterator(Data(), 0); }
VectorConstIterator< T, typename IndirectHelper< T >::return_type, SizeT > const_iterator
Definition vector.h:154

References flatbuffers::Vector< T, SizeT >::Data().

◆ cbegin()

template<typename T , typename SizeT = uoffset_t>
const_iterator flatbuffers::Vector< T, SizeT >::cbegin ( ) const
inline

Definition at line 221 of file vector.h.

221{ return begin(); }
iterator begin()
Definition vector.h:205

References flatbuffers::Vector< T, SizeT >::begin().

◆ cend()

template<typename T , typename SizeT = uoffset_t>
const_iterator flatbuffers::Vector< T, SizeT >::cend ( ) const
inline

Definition at line 223 of file vector.h.

223{ return end(); }
iterator end()
Definition vector.h:208

References flatbuffers::Vector< T, SizeT >::end().

◆ crbegin()

template<typename T , typename SizeT = uoffset_t>
const_reverse_iterator flatbuffers::Vector< T, SizeT >::crbegin ( ) const
inline

Definition at line 225 of file vector.h.

225{ return rbegin(); }
reverse_iterator rbegin()
Definition vector.h:211

References flatbuffers::Vector< T, SizeT >::rbegin().

◆ crend()

template<typename T , typename SizeT = uoffset_t>
const_reverse_iterator flatbuffers::Vector< T, SizeT >::crend ( ) const
inline

Definition at line 227 of file vector.h.

227{ return rend(); }
reverse_iterator rend()
Definition vector.h:216

References flatbuffers::Vector< T, SizeT >::rend().

◆ Data() [1/2]

template<typename T , typename SizeT = uoffset_t>
uint8_t * flatbuffers::Vector< T, SizeT >::Data ( )
inline

Definition at line 257 of file vector.h.

257{ return reinterpret_cast<uint8_t *>(&length_ + 1); }

References flatbuffers::Vector< T, SizeT >::length_.

◆ data() [1/2]

template<typename T , typename SizeT = uoffset_t>
T * flatbuffers::Vector< T, SizeT >::data ( )
inline

Definition at line 261 of file vector.h.

261{ return reinterpret_cast<T *>(Data()); }

References flatbuffers::Vector< T, SizeT >::Data().

◆ Data() [2/2]

◆ data() [2/2]

template<typename T , typename SizeT = uoffset_t>
const T * flatbuffers::Vector< T, SizeT >::data ( ) const
inline

◆ end() [1/2]

◆ end() [2/2]

template<typename T , typename SizeT = uoffset_t>
const_iterator flatbuffers::Vector< T, SizeT >::end ( ) const
inline

Definition at line 209 of file vector.h.

209{ return const_iterator(Data(), size()); }

References flatbuffers::Vector< T, SizeT >::Data(), and flatbuffers::Vector< T, SizeT >::size().

◆ FLATBUFFERS_ATTRIBUTE()

template<typename T , typename SizeT = uoffset_t>
flatbuffers::Vector< T, SizeT >::FLATBUFFERS_ATTRIBUTE ( ) const
inline

Definition at line 167 of file vector.h.

168 { return size(); }

References flatbuffers::Vector< T, SizeT >::size().

◆ Get()

◆ GetAs()

template<typename T , typename SizeT = uoffset_t>
template<typename U >
const U * flatbuffers::Vector< T, SizeT >::GetAs ( SizeT  i) const
inline

Definition at line 191 of file vector.h.

191 {
192 return reinterpret_cast<const U *>(Get(i));
193 }
return_type Get(SizeT i) const
Definition vector.h:175

References flatbuffers::Vector< T, SizeT >::Get().

◆ GetAsString()

template<typename T , typename SizeT = uoffset_t>
const String * flatbuffers::Vector< T, SizeT >::GetAsString ( SizeT  i) const
inline

Definition at line 197 of file vector.h.

197 {
198 return reinterpret_cast<const String *>(Get(i));
199 }

References flatbuffers::Vector< T, SizeT >::Get().

◆ GetEnum()

template<typename T , typename SizeT = uoffset_t>
template<typename E >
E flatbuffers::Vector< T, SizeT >::GetEnum ( SizeT  i) const
inline

Definition at line 185 of file vector.h.

185 {
186 return static_cast<E>(Get(i));
187 }

References flatbuffers::Vector< T, SizeT >::Get().

◆ GetMutableObject()

template<typename T , typename SizeT = uoffset_t>
mutable_return_type flatbuffers::Vector< T, SizeT >::GetMutableObject ( SizeT  i) const
inline

Definition at line 247 of file vector.h.

247 {
249 return const_cast<mutable_return_type>(IndirectHelper<T>::Read(Data(), i));
250 }
IndirectHelper< T >::mutable_return_type mutable_return_type
Definition vector.h:172

References flatbuffers::Vector< T, SizeT >::Data(), FLATBUFFERS_ASSERT, and flatbuffers::Vector< T, SizeT >::size().

◆ GetStructFromOffset()

template<typename T , typename SizeT = uoffset_t>
const void * flatbuffers::Vector< T, SizeT >::GetStructFromOffset ( size_t  o) const
inline

Definition at line 201 of file vector.h.

201 {
202 return reinterpret_cast<const void *>(Data() + o);
203 }

References flatbuffers::Vector< T, SizeT >::Data().

◆ LookupByKey()

template<typename T , typename SizeT = uoffset_t>
template<typename K >
return_type flatbuffers::Vector< T, SizeT >::LookupByKey ( key) const
inline

Definition at line 263 of file vector.h.

263 {
264 void *search_result = std::bsearch(
265 &key, Data(), size(), IndirectHelper<T>::element_stride, KeyCompare<K>);
266
267 if (!search_result) {
268 return nullptr; // Key not found.
269 }
270
271 const uint8_t *element = reinterpret_cast<const uint8_t *>(search_result);
272
273 return IndirectHelper<T>::Read(element, 0);
274 }

References flatbuffers::Vector< T, SizeT >::Data(), and flatbuffers::Vector< T, SizeT >::size().

Referenced by flatbuffers::Vector< T, SizeT >::MutableLookupByKey().

◆ MutableLookupByKey()

template<typename T , typename SizeT = uoffset_t>
template<typename K >
mutable_return_type flatbuffers::Vector< T, SizeT >::MutableLookupByKey ( key)
inline

Definition at line 276 of file vector.h.

276 {
277 return const_cast<mutable_return_type>(LookupByKey(key));
278 }
return_type LookupByKey(K key) const
Definition vector.h:263

References flatbuffers::Vector< T, SizeT >::LookupByKey().

◆ Mutate()

template<typename T , typename SizeT = uoffset_t>
void flatbuffers::Vector< T, SizeT >::Mutate ( SizeT  i,
const T &  val 
)
inline

Definition at line 231 of file vector.h.

231 {
233 WriteScalar(data() + i, val);
234 }
const T * data() const
Definition vector.h:260

References flatbuffers::Vector< T, SizeT >::data(), FLATBUFFERS_ASSERT, and flatbuffers::Vector< T, SizeT >::size().

◆ MutateOffset()

template<typename T , typename SizeT = uoffset_t>
void flatbuffers::Vector< T, SizeT >::MutateOffset ( SizeT  i,
const uint8_t *  val 
)
inline

Definition at line 239 of file vector.h.

239 {
241 static_assert(sizeof(T) == sizeof(SizeT), "Unrelated types");
242 WriteScalar(data() + i,
243 static_cast<SizeT>(val - (Data() + i * sizeof(SizeT))));
244 }

References flatbuffers::Vector< T, SizeT >::Data(), flatbuffers::Vector< T, SizeT >::data(), FLATBUFFERS_ASSERT, and flatbuffers::Vector< T, SizeT >::size().

◆ operator[]()

template<typename T , typename SizeT = uoffset_t>
return_type flatbuffers::Vector< T, SizeT >::operator[] ( SizeT  i) const
inline

Definition at line 180 of file vector.h.

180{ return Get(i); }

References flatbuffers::Vector< T, SizeT >::Get().

◆ rbegin() [1/2]

template<typename T , typename SizeT = uoffset_t>
reverse_iterator flatbuffers::Vector< T, SizeT >::rbegin ( )
inline

Definition at line 211 of file vector.h.

211{ return reverse_iterator(end()); }
VectorReverseIterator< iterator > reverse_iterator
Definition vector.h:155

References flatbuffers::Vector< T, SizeT >::end().

Referenced by flatbuffers::Vector< T, SizeT >::crbegin().

◆ rbegin() [2/2]

template<typename T , typename SizeT = uoffset_t>
const_reverse_iterator flatbuffers::Vector< T, SizeT >::rbegin ( ) const
inline

Definition at line 212 of file vector.h.

212 {
213 return const_reverse_iterator(end());
214 }
VectorReverseIterator< const_iterator > const_reverse_iterator
Definition vector.h:156

References flatbuffers::Vector< T, SizeT >::end().

◆ rend() [1/2]

template<typename T , typename SizeT = uoffset_t>
reverse_iterator flatbuffers::Vector< T, SizeT >::rend ( )
inline

Definition at line 216 of file vector.h.

216{ return reverse_iterator(begin()); }

References flatbuffers::Vector< T, SizeT >::begin().

Referenced by flatbuffers::Vector< T, SizeT >::crend().

◆ rend() [2/2]

template<typename T , typename SizeT = uoffset_t>
const_reverse_iterator flatbuffers::Vector< T, SizeT >::rend ( ) const
inline

Definition at line 217 of file vector.h.

217 {
219 }

References flatbuffers::Vector< T, SizeT >::begin().

◆ size()

template<typename T , typename SizeT = uoffset_t>
SizeT flatbuffers::Vector< T, SizeT >::size ( ) const
inline

Definition at line 164 of file vector.h.

164{ return EndianScalar(length_); }

References flatbuffers::Vector< T, SizeT >::length_.

Referenced by tflimport::as_index_vector(), circlechef::as_index_vector(), mio::circle::as_index_vector(), tflinspect::as_index_vector(), tflchef::as_index_vector(), tflread::as_index_vector(), tflimport::as_tensor_shape(), onert_micro::import::OMKernelConfiguration::configureKernels(), onert_micro::import::OMExecutionPlanCreator::createBackwardExecutionPlan(), onert_micro::import::OMExecutionPlanCreator::createExecutionPlan(), onert_micro::import::OMExecutionPlanCreator::createForwardExecutionPlan(), flatbuffers::Vector< T, SizeT >::end(), flatbuffers::Vector< T, SizeT >::end(), onert_micro::execute::execute_kernel_CircleGRU(), flatbuffers::Vector< T, SizeT >::FLATBUFFERS_ATTRIBUTE(), flatbuffers::Vector< T, SizeT >::Get(), flatbuffers::Vector< T, SizeT >::GetMutableObject(), onert_micro::core::OMRuntimeGraph::getNumberOfOutputs(), onert_micro::execute::getQuantizedConvolutionMultiplers(), flatbuffers::Vector< T, SizeT >::LookupByKey(), flatbuffers::Vector< T, SizeT >::Mutate(), flatbuffers::Vector< T, SizeT >::MutateOffset(), circlechef::CircleImport::num_subgraph(), mio::circle::Reader::num_subgraph(), tflinspect::Reader::num_subgraph(), tflchef::TFliteImport::num_subgraph(), tflread::Reader::num_subgraph(), flatbuffers::String::operator<(), circledump::operator<<(), tfldump::operator<<(), circledump::CustomOpPrinter::options(), tfldump::CustomOpPrinter::options(), flatbuffers::ResizeVector(), onert_micro::train::OMBackpropExecute::runBackward(), onert_micro::execute::OMKernelExecute::runForward(), circlechef::CircleImport::select_sub_graph(), tflchef::TFliteImport::select_sub_graph(), mio::circle::Reader::select_subgraph(), tflinspect::Reader::select_subgraph(), tflread::Reader::select_subgraph(), tflimport::TflBufferContext::TflBufferContext(), onert_micro::core::reader::OMTrainingConfigReader::validate(), onert_micro::core::reader::OMWeightOnlyFormatReader::validate(), and flexbuffers::VerifyNestedFlexBuffer().

Field Documentation

◆ is_span_observable

template<typename T , typename SizeT = uoffset_t>
FLATBUFFERS_CONSTEXPR bool flatbuffers::Vector< T, SizeT >::is_span_observable
static
Initial value:
=
scalar_tag::value && (FLATBUFFERS_LITTLEENDIAN || sizeof(T) == 1)

Definition at line 161 of file vector.h.

◆ length_

template<typename T , typename SizeT = uoffset_t>
SizeT flatbuffers::Vector< T, SizeT >::length_
protected

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