Flutter Engine
The Flutter Engine
Namespaces | Macros | Functions
mirrors.cc File Reference
#include "lib/mirrors.h"
#include "lib/invocation_mirror.h"
#include "vm/bootstrap_natives.h"
#include "vm/class_finalizer.h"
#include "vm/dart_api_impl.h"
#include "vm/dart_entry.h"
#include "vm/exceptions.h"
#include "vm/kernel.h"
#include "vm/object_store.h"
#include "vm/parser.h"
#include "vm/port.h"
#include "vm/resolver.h"
#include "vm/symbols.h"

Go to the source code of this file.

Namespaces

namespace  dart
 

Macros

#define RETURN_OR_PROPAGATE(expr)
 

Functions

static InstancePtr dart::CreateMirror (const String &mirror_class_name, const Array &constructor_arguments)
 
static void dart::ThrowNoSuchMethod (const Instance &receiver, const String &function_name, const Array &arguments, const Array &argument_names, const InvocationMirror::Level level, const InvocationMirror::Kind kind)
 
static void dart::EnsureConstructorsAreCompiled (const Function &func)
 
static InstancePtr dart::CreateParameterMirrorList (const Function &func, const FunctionType &signature, const Instance &owner_mirror)
 
static InstancePtr dart::CreateTypeVariableMirror (const TypeParameter &param, const Instance &owner_mirror)
 
static InstancePtr dart::CreateTypeVariableList (const Class &cls)
 
static InstancePtr dart::CreateFunctionTypeMirror (const AbstractType &type)
 
static InstancePtr dart::CreateMethodMirror (const Function &func, const Instance &owner_mirror, const AbstractType &instantiator)
 
static InstancePtr dart::CreateVariableMirror (const Field &field, const Instance &owner_mirror)
 
static InstancePtr dart::CreateClassMirror (const Class &cls, const AbstractType &type, const Bool &is_declaration, const Instance &owner_mirror)
 
static bool dart::IsCensoredLibrary (const String &url)
 
static InstancePtr dart::CreateLibraryMirror (Thread *thread, const Library &lib)
 
static InstancePtr dart::CreateCombinatorMirror (const Object &identifiers, bool is_show)
 
static InstancePtr dart::CreateLibraryDependencyMirror (Thread *thread, const Instance &importer, const Library &importee, const Array &show_names, const Array &hide_names, const Object &metadata, const LibraryPrefix &prefix, const String &prefix_name, const bool is_import, const bool is_deferred)
 
static InstancePtr dart::CreateLibraryDependencyMirror (Thread *thread, const Instance &importer, const Namespace &ns, const LibraryPrefix &prefix, const bool is_import, const bool is_deferred)
 
 dart::DEFINE_NATIVE_ENTRY (LibraryMirror_fromPrefix, 0, 1)
 
 dart::DEFINE_NATIVE_ENTRY (LibraryMirror_libraryDependencies, 0, 2)
 
static InstancePtr dart::CreateTypeMirror (const AbstractType &type)
 
static InstancePtr dart::CreateIsolateMirror ()
 
static void dart::VerifyMethodKindShifts ()
 
static AbstractTypePtr dart::InstantiateType (const AbstractType &type, const AbstractType &instantiator)
 
 dart::DEFINE_NATIVE_ENTRY (MirrorSystem_libraries, 0, 0)
 
 dart::DEFINE_NATIVE_ENTRY (MirrorSystem_isolate, 0, 0)
 
static void dart::ThrowLanguageError (const char *message)
 
 dart::DEFINE_NATIVE_ENTRY (IsolateMirror_loadUri, 0, 1)
 
 dart::DEFINE_NATIVE_ENTRY (Mirrors_makeLocalClassMirror, 0, 1)
 
 dart::DEFINE_NATIVE_ENTRY (Mirrors_makeLocalTypeMirror, 0, 1)
 
 dart::DEFINE_NATIVE_ENTRY (Mirrors_instantiateGenericType, 0, 2)
 
 dart::DEFINE_NATIVE_ENTRY (Mirrors_mangleName, 0, 2)
 
 dart::DEFINE_NATIVE_ENTRY (MirrorReference_equals, 0, 2)
 
 dart::DEFINE_NATIVE_ENTRY (DeclarationMirror_metadata, 0, 1)
 
 dart::DEFINE_NATIVE_ENTRY (FunctionTypeMirror_call_method, 0, 2)
 
 dart::DEFINE_NATIVE_ENTRY (FunctionTypeMirror_parameters, 0, 2)
 
 dart::DEFINE_NATIVE_ENTRY (FunctionTypeMirror_return_type, 0, 1)
 
 dart::DEFINE_NATIVE_ENTRY (ClassMirror_libraryUri, 0, 1)
 
 dart::DEFINE_NATIVE_ENTRY (ClassMirror_supertype, 0, 1)
 
 dart::DEFINE_NATIVE_ENTRY (ClassMirror_supertype_instantiated, 0, 1)
 
 dart::DEFINE_NATIVE_ENTRY (ClassMirror_interfaces, 0, 1)
 
 dart::DEFINE_NATIVE_ENTRY (ClassMirror_interfaces_instantiated, 0, 1)
 
 dart::DEFINE_NATIVE_ENTRY (ClassMirror_mixin, 0, 1)
 
 dart::DEFINE_NATIVE_ENTRY (ClassMirror_mixin_instantiated, 0, 2)
 
 dart::DEFINE_NATIVE_ENTRY (ClassMirror_members, 0, 3)
 
 dart::DEFINE_NATIVE_ENTRY (ClassMirror_constructors, 0, 3)
 
 dart::DEFINE_NATIVE_ENTRY (LibraryMirror_members, 0, 2)
 
 dart::DEFINE_NATIVE_ENTRY (ClassMirror_type_variables, 0, 1)
 
 dart::DEFINE_NATIVE_ENTRY (ClassMirror_type_arguments, 0, 1)
 
 dart::DEFINE_NATIVE_ENTRY (TypeVariableMirror_owner, 0, 1)
 
 dart::DEFINE_NATIVE_ENTRY (TypeVariableMirror_upper_bound, 0, 1)
 
 dart::DEFINE_NATIVE_ENTRY (InstanceMirror_invoke, 0, 5)
 
 dart::DEFINE_NATIVE_ENTRY (InstanceMirror_invokeGetter, 0, 3)
 
 dart::DEFINE_NATIVE_ENTRY (InstanceMirror_invokeSetter, 0, 4)
 
 dart::DEFINE_NATIVE_ENTRY (InstanceMirror_computeType, 0, 1)
 
 dart::DEFINE_NATIVE_ENTRY (ClosureMirror_function, 0, 1)
 
 dart::DEFINE_NATIVE_ENTRY (ClassMirror_invoke, 0, 5)
 
 dart::DEFINE_NATIVE_ENTRY (ClassMirror_invokeGetter, 0, 3)
 
 dart::DEFINE_NATIVE_ENTRY (ClassMirror_invokeSetter, 0, 4)
 
 dart::DEFINE_NATIVE_ENTRY (ClassMirror_invokeConstructor, 0, 5)
 
 dart::DEFINE_NATIVE_ENTRY (LibraryMirror_invoke, 0, 5)
 
 dart::DEFINE_NATIVE_ENTRY (LibraryMirror_invokeGetter, 0, 3)
 
 dart::DEFINE_NATIVE_ENTRY (LibraryMirror_invokeSetter, 0, 4)
 
 dart::DEFINE_NATIVE_ENTRY (MethodMirror_owner, 0, 2)
 
 dart::DEFINE_NATIVE_ENTRY (MethodMirror_parameters, 0, 2)
 
 dart::DEFINE_NATIVE_ENTRY (MethodMirror_return_type, 0, 2)
 
 dart::DEFINE_NATIVE_ENTRY (MethodMirror_source, 0, 1)
 
static InstancePtr dart::CreateSourceLocation (const String &uri, intptr_t line, intptr_t column)
 
 dart::DEFINE_NATIVE_ENTRY (DeclarationMirror_location, 0, 1)
 
 dart::DEFINE_NATIVE_ENTRY (ParameterMirror_type, 0, 3)
 
 dart::DEFINE_NATIVE_ENTRY (VariableMirror_type, 0, 2)
 
 dart::DEFINE_NATIVE_ENTRY (TypeMirror_subtypeTest, 0, 2)
 

Macro Definition Documentation

◆ RETURN_OR_PROPAGATE

#define RETURN_OR_PROPAGATE (   expr)
Value:
ObjectPtr result = expr; \
if (IsErrorClassId(result->GetClassIdMayBeSmi())) { \
Exceptions::PropagateError(Error::Handle(Error::RawCast(result))); \
} \
return result;
GAsyncResult * result
bool IsErrorClassId(intptr_t index)
Definition: class_id.h:321

Definition at line 24 of file mirrors.cc.