Flutter Engine
The Flutter Engine
Loading...
Searching...
No Matches
Namespaces | Macros | Functions
typed_data.cc File Reference
#include "vm/bootstrap_natives.h"
#include "include/dart_api.h"
#include "vm/exceptions.h"
#include "vm/native_entry.h"
#include "vm/object.h"
#include "vm/object_store.h"

Go to the source code of this file.

Namespaces

namespace  dart
 

Macros

#define TYPED_DATA_GETTER(getter, object, ctor)
 
#define TYPED_DATA_SETTER(setter, object, get_object_value, access_type)
 
#define TYPED_DATA_NATIVES(type_name, object, ctor, get_object_value, access_type)
 

Functions

 dart::DEFINE_NATIVE_ENTRY (TypedDataBase_length, 0, 1)
 
 dart::DEFINE_NATIVE_ENTRY (TypedDataView_offsetInBytes, 0, 1)
 
 dart::DEFINE_NATIVE_ENTRY (TypedDataView_typedData, 0, 1)
 
static bool dart::IsTypedDataUint8ArrayClassId (intptr_t cid)
 
 dart::DEFINE_NATIVE_ENTRY (TypedDataBase_setClampedRange, 0, 5)
 

Macro Definition Documentation

◆ TYPED_DATA_GETTER

#define TYPED_DATA_GETTER (   getter,
  object,
  ctor 
)
Value:
DEFINE_NATIVE_ENTRY(TypedData_##getter, 0, 2) { \
GET_NON_NULL_NATIVE_ARGUMENT(TypedDataBase, array, \
arguments->NativeArgAt(0)); \
GET_NON_NULL_NATIVE_ARGUMENT(Smi, offsetInBytes, \
arguments->NativeArgAt(1)); \
return object::ctor(array.getter(offsetInBytes.Value())); \
}
#define DEFINE_NATIVE_ENTRY(name, type_argument_count, argument_count)

Definition at line 114 of file typed_data.cc.

115 { \
116 GET_NON_NULL_NATIVE_ARGUMENT(TypedDataBase, array, \
117 arguments->NativeArgAt(0)); \
118 GET_NON_NULL_NATIVE_ARGUMENT(Smi, offsetInBytes, \
119 arguments->NativeArgAt(1)); \
120 return object::ctor(array.getter(offsetInBytes.Value())); \
121 }

◆ TYPED_DATA_NATIVES

#define TYPED_DATA_NATIVES (   type_name,
  object,
  ctor,
  get_object_value,
  access_type 
)
Value:
TYPED_DATA_GETTER(Get##type_name, object, ctor) \
TYPED_DATA_SETTER(Set##type_name, object, get_object_value, access_type)
#define TYPED_DATA_GETTER(getter, object, ctor)

Definition at line 135 of file typed_data.cc.

◆ TYPED_DATA_SETTER

#define TYPED_DATA_SETTER (   setter,
  object,
  get_object_value,
  access_type 
)
Value:
DEFINE_NATIVE_ENTRY(TypedData_##setter, 0, 3) { \
GET_NON_NULL_NATIVE_ARGUMENT(TypedDataBase, array, \
arguments->NativeArgAt(0)); \
GET_NON_NULL_NATIVE_ARGUMENT(Smi, offsetInBytes, \
arguments->NativeArgAt(1)); \
GET_NON_NULL_NATIVE_ARGUMENT(object, value, arguments->NativeArgAt(2)); \
array.setter(offsetInBytes.Value(), \
static_cast<access_type>(value.get_object_value())); \
return Object::null(); \
}
uint8_t value

Definition at line 123 of file typed_data.cc.

124 { \
125 GET_NON_NULL_NATIVE_ARGUMENT(TypedDataBase, array, \
126 arguments->NativeArgAt(0)); \
127 GET_NON_NULL_NATIVE_ARGUMENT(Smi, offsetInBytes, \
128 arguments->NativeArgAt(1)); \
129 GET_NON_NULL_NATIVE_ARGUMENT(object, value, arguments->NativeArgAt(2)); \
130 array.setter(offsetInBytes.Value(), \
131 static_cast<access_type>(value.get_object_value())); \
132 return Object::null(); \
133 }