Flutter Engine
The Flutter Engine
Loading...
Searching...
No Matches
Public Types | Public Member Functions | Public Attributes | List of all members
tonic::DartDispatcher< IndicesHolder< indices... >, ReturnType(C::*)(ArgTypes...) const > Struct Template Reference

#include <dart_args.h>

Inheritance diagram for tonic::DartDispatcher< IndicesHolder< indices... >, ReturnType(C::*)(ArgTypes...) const >:
tonic::DartArgHolder< indices, ArgTypes >

Public Types

using FunctionPtr = ReturnType(C::*)(ArgTypes...) const
 
- Public Types inherited from tonic::DartArgHolder< indices, ArgTypes >
using ValueType = typename std::remove_const< typename std::remove_reference< ArgTypes >::type >::type
 

Public Member Functions

 DartDispatcher (DartArgIterator *it)
 
void Dispatch (FunctionPtr func)
 
- Public Member Functions inherited from tonic::DartArgHolder< indices, ArgTypes >
 DartArgHolder (DartArgIterator *it)
 

Public Attributes

DartArgIteratorit_
 
- Public Attributes inherited from tonic::DartArgHolder< indices, ArgTypes >
ValueType value
 

Detailed Description

template<size_t... indices, typename C, typename ReturnType, typename... ArgTypes>
struct tonic::DartDispatcher< IndicesHolder< indices... >, ReturnType(C::*)(ArgTypes...) const >

Definition at line 170 of file dart_args.h.

Member Typedef Documentation

◆ FunctionPtr

template<size_t... indices, typename C , typename ReturnType , typename... ArgTypes>
using tonic::DartDispatcher< IndicesHolder< indices... >, ReturnType(C::*)(ArgTypes...) const >::FunctionPtr = ReturnType (C::*)(ArgTypes...) const

Definition at line 173 of file dart_args.h.

Constructor & Destructor Documentation

◆ DartDispatcher()

template<size_t... indices, typename C , typename ReturnType , typename... ArgTypes>
tonic::DartDispatcher< IndicesHolder< indices... >, ReturnType(C::*)(ArgTypes...) const >::DartDispatcher ( DartArgIterator it)
inlineexplicit

Definition at line 177 of file dart_args.h.

178 : DartArgHolder<indices, ArgTypes>(it)..., it_(it) {}

Member Function Documentation

◆ Dispatch()

template<size_t... indices, typename C , typename ReturnType , typename... ArgTypes>
void tonic::DartDispatcher< IndicesHolder< indices... >, ReturnType(C::*)(ArgTypes...) const >::Dispatch ( FunctionPtr  func)
inline

Definition at line 180 of file dart_args.h.

180 {
181 DartReturn((GetReceiver<C>(it_->args())->*func)(
182 DartArgHolder<indices, ArgTypes>::value...),
183 it_->args());
184 }
Dart_NativeArguments args() const
Definition dart_args.h:39
void DartReturn(T result, Dart_NativeArguments args)
Definition dart_args.h:99

Member Data Documentation

◆ it_

template<size_t... indices, typename C , typename ReturnType , typename... ArgTypes>
DartArgIterator* tonic::DartDispatcher< IndicesHolder< indices... >, ReturnType(C::*)(ArgTypes...) const >::it_

Definition at line 175 of file dart_args.h.


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