Flutter Engine
The Flutter Engine
Loading...
Searching...
No Matches
Classes | Namespaces | Macros
builtin.h File Reference
#include <stdio.h>
#include <stdlib.h>
#include "include/dart_api.h"
#include "platform/assert.h"
#include "platform/globals.h"

Go to the source code of this file.

Classes

class  dart::bin::Builtin
 

Namespaces

namespace  dart
 
namespace  dart::bin
 

Macros

#define FUNCTION_NAME(name)   Builtin_##name
 
#define REGISTER_FUNCTION(name, count)   {"" #name, FUNCTION_NAME(name), count},
 
#define DECLARE_FUNCTION(name, count)    extern void FUNCTION_NAME(name)(Dart_NativeArguments args);
 

Macro Definition Documentation

◆ DECLARE_FUNCTION

#define DECLARE_FUNCTION (   name,
  count 
)     extern void FUNCTION_NAME(name)(Dart_NativeArguments args);

Definition at line 21 of file builtin.h.

23 {
24 public:
25 // Note: Changes to this enum should be accompanied with changes to
26 // the builtin_libraries_ array in builtin.cc and builtin_nolib.cc.
27 enum BuiltinLibraryId {
28 kInvalidLibrary = -1,
29 kBuiltinLibrary = 0,
30 kIOLibrary,
31 kHttpLibrary,
32 kCLILibrary,
33 };
34
35 // Setup native resolver method built in library specified in 'id'.
36 static void SetNativeResolver(BuiltinLibraryId id);
37
38 // Check if built in library specified in 'id' is already loaded, if not
39 // load it.
40 static Dart_Handle LoadAndCheckLibrary(BuiltinLibraryId id);
41
42 private:
43 // Native method support.
44 static Dart_NativeFunction NativeLookup(Dart_Handle name,
46 bool* auto_setup_scope);
47
48 static const uint8_t* NativeSymbol(Dart_NativeFunction nf);
49
50 static const int num_libs_;
51
52 typedef struct {
53 const char* url_;
54 bool has_natives_;
55 } builtin_lib_props;
56 static builtin_lib_props builtin_libraries_[];
57
60};
61
62} // namespace bin
63} // namespace dart
64
65#endif // RUNTIME_BIN_BUILTIN_H_
struct _Dart_Handle * Dart_Handle
Definition dart_api.h:258
void(* Dart_NativeFunction)(Dart_NativeArguments arguments)
Definition dart_api.h:3198
const char * name
Definition fuchsia.cc:50
int argument_count
Definition fuchsia.cc:52
#define DISALLOW_IMPLICIT_CONSTRUCTORS(TypeName)
Definition globals.h:593
#define DISALLOW_ALLOCATION()
Definition globals.h:604

◆ FUNCTION_NAME

#define FUNCTION_NAME (   name)    Builtin_##name

Definition at line 19 of file builtin.h.

◆ REGISTER_FUNCTION

#define REGISTER_FUNCTION (   name,
  count 
)    {"" #name, FUNCTION_NAME(name), count},

Definition at line 20 of file builtin.h.