Flutter Engine
The Flutter Engine
Loading...
Searching...
No Matches
Macros
dart_binding_macros.h File Reference
#include "tonic/dart_args.h"

Go to the source code of this file.

Macros

#define DART_NATIVE_NO_UI_CHECK_CALLBACK(CLASS, METHOD)
 
#define DART_NATIVE_CALLBACK(CLASS, METHOD)
 
#define DART_NATIVE_CALLBACK_STATIC(CLASS, METHOD)
 
#define DART_REGISTER_NATIVE(CLASS, METHOD)
 
#define DART_REGISTER_NATIVE_STATIC(CLASS, METHOD)
 
#define DART_BIND_ALL(CLASS, FOR_EACH)
 

Macro Definition Documentation

◆ DART_BIND_ALL

#define DART_BIND_ALL (   CLASS,
  FOR_EACH 
)
Value:
void CLASS::RegisterNatives(tonic::DartLibraryNatives* natives) { \
natives->Register({FOR_EACH(DART_REGISTER_NATIVE)}); \
}
void Register(std::initializer_list< Entry > entries)
#define DART_NATIVE_CALLBACK(CLASS, METHOD)
#define DART_REGISTER_NATIVE(CLASS, METHOD)

Definition at line 36 of file dart_binding_macros.h.

38 { \
39 natives->Register({FOR_EACH(DART_REGISTER_NATIVE)}); \
40 }

◆ DART_NATIVE_CALLBACK

#define DART_NATIVE_CALLBACK (   CLASS,
  METHOD 
)
Value:
static void CLASS##_##METHOD(Dart_NativeArguments args) { \
UIDartState::ThrowIfUIOperationsProhibited(); \
tonic::DartCall(&CLASS::METHOD, args); \
}
struct _Dart_NativeArguments * Dart_NativeArguments
Definition dart_api.h:3010
G_BEGIN_DECLS G_MODULE_EXPORT FlValue * args

Definition at line 15 of file dart_binding_macros.h.

16 { \
17 UIDartState::ThrowIfUIOperationsProhibited(); \
18 tonic::DartCall(&CLASS::METHOD, args); \
19 }

◆ DART_NATIVE_CALLBACK_STATIC

#define DART_NATIVE_CALLBACK_STATIC (   CLASS,
  METHOD 
)
Value:
static void CLASS##_##METHOD(Dart_NativeArguments args) { \
tonic::DartCallStatic(&CLASS::METHOD, args); \
}

Definition at line 21 of file dart_binding_macros.h.

22 { \
23 tonic::DartCallStatic(&CLASS::METHOD, args); \
24 }

◆ DART_NATIVE_NO_UI_CHECK_CALLBACK

#define DART_NATIVE_NO_UI_CHECK_CALLBACK (   CLASS,
  METHOD 
)
Value:
static void CLASS##_##METHOD(Dart_NativeArguments args) { \
tonic::DartCall(&CLASS::METHOD, args); \
}

Definition at line 10 of file dart_binding_macros.h.

11 { \
12 tonic::DartCall(&CLASS::METHOD, args); \
13 }

◆ DART_REGISTER_NATIVE

#define DART_REGISTER_NATIVE (   CLASS,
  METHOD 
)
Value:
{#CLASS "_" #METHOD, CLASS##_##METHOD, \
tonic::IndicesForSignature<decltype(&CLASS::METHOD)>::count + 1, true},
int count

Definition at line 26 of file dart_binding_macros.h.

27 {#CLASS "_" #METHOD, CLASS##_##METHOD, \
28 tonic::IndicesForSignature<decltype(&CLASS::METHOD)>::count + 1, true},

◆ DART_REGISTER_NATIVE_STATIC

#define DART_REGISTER_NATIVE_STATIC (   CLASS,
  METHOD 
)
Value:
{ \
#CLASS "_" #METHOD, CLASS##_##METHOD, \
tonic::IndicesForSignature<decltype(&CLASS::METHOD)>::count, true \
}

Definition at line 30 of file dart_binding_macros.h.

31 { \
32 #CLASS "_" #METHOD, CLASS##_##METHOD, \
33 tonic::IndicesForSignature<decltype(&CLASS::METHOD)>::count, true \
34 }