![]() |
Flutter Engine
The Flutter Engine
|
#include <object.h>
Classes | |
class | CodePointIterator |
Public Member Functions | |
intptr_t | Length () const |
uword | Hash () const |
bool | HasHash () const |
virtual ObjectPtr | HashCode () const |
uint16_t | CharAt (intptr_t index) const |
intptr_t | CharSize () const |
bool | Equals (const String &str) const |
bool | Equals (const String &str, intptr_t begin_index, intptr_t len) const |
bool | Equals (const char *cstr) const |
bool | EqualsLatin1 (const uint8_t *characters, intptr_t len) const |
bool | Equals (const uint16_t *characters, intptr_t len) const |
bool | Equals (const int32_t *characters, intptr_t len) const |
bool | EqualsConcat (const String &str1, const String &str2) const |
virtual bool | OperatorEquals (const Instance &other) const |
virtual bool | CanonicalizeEquals (const Instance &other) const |
virtual uint32_t | CanonicalizeHash () const |
virtual bool | Equals (const Instance &other) const |
intptr_t | CompareTo (const String &other) const |
bool | StartsWith (const String &other) const |
bool | EndsWith (const String &other) const |
virtual InstancePtr | CanonicalizeLocked (Thread *thread) const |
bool | IsSymbol () const |
bool | IsOneByteString () const |
bool | IsTwoByteString () const |
char * | ToMallocCString () const |
void | ToUTF8 (uint8_t *utf8_array, intptr_t array_len) const |
![]() | |
virtual bool | OperatorEquals (const Instance &other) const |
bool | IsIdenticalTo (const Instance &other) const |
virtual bool | CanonicalizeEquals (const Instance &other) const |
virtual uint32_t | CanonicalizeHash () const |
intptr_t | SizeFromClass () const |
InstancePtr | Canonicalize (Thread *thread) const |
virtual InstancePtr | CanonicalizeLocked (Thread *thread) const |
virtual void | CanonicalizeFieldsLocked (Thread *thread) const |
InstancePtr | CopyShallowToOldSpace (Thread *thread) const |
ObjectPtr | GetField (const Field &field) const |
void | SetField (const Field &field, const Object &value) const |
AbstractTypePtr | GetType (Heap::Space space) const |
virtual TypeArgumentsPtr | GetTypeArguments () const |
virtual void | SetTypeArguments (const TypeArguments &value) const |
bool | IsInstanceOf (const AbstractType &other, const TypeArguments &other_instantiator_type_arguments, const TypeArguments &other_function_type_arguments) const |
bool | IsAssignableTo (const AbstractType &other, const TypeArguments &other_instantiator_type_arguments, const TypeArguments &other_function_type_arguments) const |
bool | IsValidNativeIndex (int index) const |
intptr_t * | NativeFieldsDataAddr () const |
intptr_t | GetNativeField (int index) const |
void | GetNativeFields (uint16_t num_fields, intptr_t *field_values) const |
void | SetNativeFields (uint16_t num_fields, const intptr_t *field_values) const |
uint16_t | NumNativeFields () const |
void | SetNativeField (int index, intptr_t value) const |
bool | IsCallable (Function *function) const |
ObjectPtr | Invoke (const String &selector, const Array &arguments, const Array &argument_names, bool respect_reflectable=true, bool check_is_entrypoint=false) const |
ObjectPtr | InvokeGetter (const String &selector, bool respect_reflectable=true, bool check_is_entrypoint=false) const |
ObjectPtr | InvokeSetter (const String &selector, const Instance &argument, bool respect_reflectable=true, bool check_is_entrypoint=false) const |
ObjectPtr | EvaluateCompiledExpression (const Class &klass, const ExternalTypedData &kernel_buffer, const Array &type_definitions, const Array &arguments, const TypeArguments &type_arguments) const |
virtual ObjectPtr | HashCode () const |
IntegerPtr | IdentityHashCode (Thread *thread) const |
virtual bool | IsPointer () const |
![]() | |
virtual | ~Object () |
ObjectPtr | ptr () const |
void | operator= (ObjectPtr value) |
bool | IsCanonical () const |
void | SetCanonical () const |
void | ClearCanonical () const |
bool | IsImmutable () const |
void | SetImmutable () const |
void | ClearImmutable () const |
intptr_t | GetClassId () const |
ClassPtr | clazz () const |
CLASS_LIST_FOR_HANDLES (DEFINE_CLASS_TESTER) | |
bool | IsNull () const |
virtual const char * | ToCString () const |
void | PrintJSON (JSONStream *stream, bool ref=true) const |
virtual void | PrintJSONImpl (JSONStream *stream, bool ref) const |
void | PrintImplementationFields (JSONStream *stream) const |
virtual void | PrintImplementationFieldsImpl (const JSONArray &jsarr_fields) const |
virtual const char * | JSONType () const |
virtual StringPtr | DictionaryName () const |
bool | IsNew () const |
bool | IsOld () const |
bool | InVMIsolateHeap () const |
void | Print () const |
Static Public Member Functions | |
static intptr_t | HeaderSize () |
static intptr_t | InstanceSize () |
static intptr_t | LengthOf (StringPtr obj) |
static intptr_t | length_offset () |
static uword | Hash (StringPtr raw) |
static intptr_t | hash_offset () |
static uword | Hash (const String &str, intptr_t begin_index, intptr_t len) |
static uword | Hash (const char *characters, intptr_t len) |
static uword | Hash (const uint16_t *characters, intptr_t len) |
static uword | Hash (const int32_t *characters, intptr_t len) |
static uword | HashRawSymbol (const StringPtr symbol) |
static uword | HashConcat (const String &str1, const String &str2) |
static uint16_t | CharAt (StringPtr str, intptr_t index) |
static bool | StartsWith (StringPtr str, StringPtr prefix) |
static const char * | ToCString (Thread *thread, StringPtr ptr) |
static StringPtr | New (const char *cstr, Heap::Space space=Heap::kNew) |
static StringPtr | FromUTF8 (const uint8_t *utf8_array, intptr_t array_len, Heap::Space space=Heap::kNew) |
static StringPtr | FromLatin1 (const uint8_t *latin1_array, intptr_t array_len, Heap::Space space=Heap::kNew) |
static StringPtr | FromUTF16 (const uint16_t *utf16_array, intptr_t array_len, Heap::Space space=Heap::kNew) |
static StringPtr | FromUTF32 (const int32_t *utf32_array, intptr_t array_len, Heap::Space space=Heap::kNew) |
static StringPtr | New (const String &str, Heap::Space space=Heap::kNew) |
static StringPtr | NewExternal (const uint8_t *utf8_array, intptr_t array_len, void *peer, intptr_t external_allocation_size, Dart_HandleFinalizer callback, Heap::Space=Heap::kNew) |
static StringPtr | NewExternal (const uint16_t *utf16_array, intptr_t array_len, void *peer, intptr_t external_allocation_size, Dart_HandleFinalizer callback, Heap::Space=Heap::kNew) |
static void | Copy (const String &dst, intptr_t dst_offset, const uint8_t *characters, intptr_t len) |
static void | Copy (const String &dst, intptr_t dst_offset, const uint16_t *characters, intptr_t len) |
static void | Copy (const String &dst, intptr_t dst_offset, const String &src, intptr_t src_offset, intptr_t len) |
static StringPtr | EscapeSpecialCharacters (const String &str) |
static const char * | EncodeIRI (const String &str) |
static StringPtr | DecodeIRI (const String &str) |
static StringPtr | Concat (const String &str1, const String &str2, Heap::Space space=Heap::kNew) |
static StringPtr | ConcatAll (const Array &strings, Heap::Space space=Heap::kNew) |
static StringPtr | ConcatAllRange (const Array &strings, intptr_t start, intptr_t end, Heap::Space space=Heap::kNew) |
static StringPtr | SubString (const String &str, intptr_t begin_index, Heap::Space space=Heap::kNew) |
static StringPtr | SubString (const String &str, intptr_t begin_index, intptr_t length, Heap::Space space=Heap::kNew) |
static StringPtr | SubString (Thread *thread, const String &str, intptr_t begin_index, intptr_t length, Heap::Space space=Heap::kNew) |
static StringPtr | Transform (int32_t(*mapping)(int32_t ch), const String &str, Heap::Space space=Heap::kNew) |
static StringPtr | ToUpperCase (const String &str, Heap::Space space=Heap::kNew) |
static StringPtr | ToLowerCase (const String &str, Heap::Space space=Heap::kNew) |
static StringPtr | RemovePrivateKey (const String &name) |
static const char * | ScrubName (const String &name, bool is_extension=false) |
static StringPtr | ScrubNameRetainPrivate (const String &name, bool is_extension=false) |
static bool | EqualsIgnoringPrivateKey (const String &str1, const String &str2) |
static StringPtr | NewFormatted (const char *format,...) PRINTF_ATTRIBUTE(1 |
static StringPtr static StringPtr | NewFormatted (Heap::Space space, const char *format,...) PRINTF_ATTRIBUTE(2 |
static StringPtr static StringPtr static StringPtr | NewFormattedV (const char *format, va_list args, Heap::Space space=Heap::kNew) |
static bool | ParseDouble (const String &str, intptr_t start, intptr_t end, double *result) |
static uint32_t | GetCachedHash (const StringPtr obj) |
static uint32_t | SetCachedHashIfNotSet (StringPtr obj, uint32_t hash) |
static uint32_t | SetCachedHash (StringPtr obj, uint32_t hash) |
![]() | |
static bool | NullIsAssignableTo (const AbstractType &other) |
static bool | NullIsAssignableTo (const AbstractType &other, const TypeArguments &other_instantiator_type_arguments, const TypeArguments &other_function_type_arguments) |
static ObjectPtr | EvaluateCompiledExpression (Thread *thread, const Object &receiver, const Library &library, const Class &klass, const ExternalTypedData &kernel_buffer, const Array &type_definitions, const Array ¶m_values, const TypeArguments &type_param_values) |
static intptr_t | UnroundedSize () |
static intptr_t | InstanceSize () |
static InstancePtr | New (const Class &cls, Heap::Space space=Heap::kNew) |
static InstancePtr | NewAlreadyFinalized (const Class &cls, Heap::Space space=Heap::kNew) |
static intptr_t | DataOffsetFor (intptr_t cid) |
static intptr_t | ElementSizeFor (intptr_t cid) |
static intptr_t | NextFieldOffset () |
static intptr_t | NativeFieldsOffset () |
![]() | |
static ObjectPtr | RawCast (ObjectPtr obj) |
static constexpr bool | ContainsCompressedPointers () |
static intptr_t | tags_offset () |
static Object & | Handle () |
static Object & | Handle (Zone *zone) |
static Object & | Handle (ObjectPtr ptr) |
static Object & | Handle (Zone *zone, ObjectPtr ptr) |
static Object & | ZoneHandle () |
static Object & | ZoneHandle (Zone *zone) |
static Object & | ZoneHandle (ObjectPtr ptr) |
static Object & | ZoneHandle (Zone *zone, ObjectPtr ptr) |
static Object * | ReadOnlyHandle () |
static ObjectPtr | null () |
static void | set_vm_isolate_snapshot_object_table (const Array &table) |
static ClassPtr | class_class () |
static ClassPtr | dynamic_class () |
static ClassPtr | void_class () |
static ClassPtr | type_parameters_class () |
static ClassPtr | type_arguments_class () |
static ClassPtr | patch_class_class () |
static ClassPtr | function_class () |
static ClassPtr | closure_data_class () |
static ClassPtr | ffi_trampoline_data_class () |
static ClassPtr | field_class () |
static ClassPtr | script_class () |
static ClassPtr | library_class () |
static ClassPtr | namespace_class () |
static ClassPtr | kernel_program_info_class () |
static ClassPtr | code_class () |
static ClassPtr | instructions_class () |
static ClassPtr | instructions_section_class () |
static ClassPtr | instructions_table_class () |
static ClassPtr | object_pool_class () |
static ClassPtr | pc_descriptors_class () |
static ClassPtr | code_source_map_class () |
static ClassPtr | compressed_stackmaps_class () |
static ClassPtr | var_descriptors_class () |
static ClassPtr | exception_handlers_class () |
static ClassPtr | context_class () |
static ClassPtr | context_scope_class () |
static ClassPtr | sentinel_class () |
static ClassPtr | api_error_class () |
static ClassPtr | language_error_class () |
static ClassPtr | unhandled_exception_class () |
static ClassPtr | unwind_error_class () |
static ClassPtr | singletargetcache_class () |
static ClassPtr | unlinkedcall_class () |
static ClassPtr | monomorphicsmiablecall_class () |
static ClassPtr | icdata_class () |
static ClassPtr | megamorphic_cache_class () |
static ClassPtr | subtypetestcache_class () |
static ClassPtr | loadingunit_class () |
static ClassPtr | weak_serialization_reference_class () |
static ClassPtr | weak_array_class () |
static void | InitNullAndBool (IsolateGroup *isolate_group) |
static void | Init (IsolateGroup *isolate_group) |
static void | InitVtables () |
static void | FinishInit (IsolateGroup *isolate_group) |
static void | FinalizeVMIsolate (IsolateGroup *isolate_group) |
static void | FinalizeReadOnlyObject (ObjectPtr object) |
static void | Cleanup () |
static ErrorPtr | Init (IsolateGroup *isolate_group, const uint8_t *kernel_buffer, intptr_t kernel_buffer_size) |
static void | MakeUnusedSpaceTraversable (const Object &obj, intptr_t original_size, intptr_t used_size) |
static intptr_t | InstanceSize () |
template<class FakeObject > | |
static void | VerifyBuiltinVtable (intptr_t cid) |
static void | VerifyBuiltinVtables () |
static bool | ShouldHaveImmutabilityBitSet (classid_t class_id) |
Static Public Attributes | |
static constexpr intptr_t | kOneByteChar = 1 |
static constexpr intptr_t | kTwoByteChar = 2 |
static constexpr intptr_t | kSizeofRawString |
static constexpr intptr_t | kMaxElements = kSmiMax / kTwoByteChar |
![]() | |
static constexpr intptr_t | kHashBits = 30 |
static const ClassId | kClassId = kObjectCid |
Protected Member Functions | |
bool | Equals (const uint8_t *characters, intptr_t len) const |
void | SetLength (intptr_t value) const |
void | SetHash (intptr_t value) const |
FINAL_HEAP_OBJECT_IMPLEMENTATION (String, Instance) | |
![]() | |
virtual void | PrintSharedInstanceJSON (JSONObject *jsobj, bool ref, bool include_id=true) const |
![]() | |
Object () | |
uword | raw_value () const |
void | setPtr (ObjectPtr value, intptr_t default_cid) |
void | CheckHandle () const |
cpp_vtable | vtable () const |
void | set_vtable (cpp_vtable value) |
bool | Contains (uword addr) const |
template<typename type , std::memory_order order = std::memory_order_relaxed> | |
type | LoadPointer (type const *addr) const |
template<typename type , std::memory_order order = std::memory_order_relaxed> | |
void | StorePointer (type const *addr, type value) const |
template<typename type , typename compressed_type , std::memory_order order = std::memory_order_relaxed> | |
void | StoreCompressedPointer (compressed_type const *addr, type value) const |
template<typename type > | |
void | StorePointerUnaligned (type const *addr, type value, Thread *thread) const |
void | StoreSmi (SmiPtr const *addr, SmiPtr value) const |
template<typename FieldType > | |
void | StoreSimd128 (const FieldType *addr, simd128_value_t value) const |
template<typename FieldType > | |
FieldType | LoadNonPointer (const FieldType *addr) const |
template<typename FieldType , std::memory_order order> | |
FieldType | LoadNonPointer (const FieldType *addr) const |
template<typename FieldType , typename ValueType > | |
void | StoreNonPointer (const FieldType *addr, ValueType value) const |
template<typename FieldType , typename ValueType , std::memory_order order> | |
void | StoreNonPointer (const FieldType *addr, ValueType value) const |
template<typename FieldType > | |
FieldType * | UnsafeMutableNonPointer (const FieldType *addr) const |
CLASS_LIST (STORE_NON_POINTER_ILLEGAL_TYPE) | |
void | UnimplementedMethod () const |
void | AddCommonObjectProperties (JSONObject *jsobj, const char *protocol_type, bool ref) const |
Static Protected Member Functions | |
static uword | Hash (const uint8_t *characters, intptr_t len) |
![]() | |
static DART_NOINLINE Object & | HandleImpl (Zone *zone, ObjectPtr ptr, intptr_t default_cid) |
static DART_NOINLINE Object & | ZoneHandleImpl (Zone *zone, ObjectPtr ptr, intptr_t default_cid) |
static DART_NOINLINE Object * | ReadOnlyHandleImpl (intptr_t cid) |
static ObjectPtr | Allocate (intptr_t cls_id, intptr_t size, Heap::Space space, bool compressed, uword ptr_field_start_offset, uword ptr_field_end_offset) |
template<typename T > | |
static DART_FORCE_INLINE T::ObjectPtrType | Allocate (Heap::Space space) |
template<typename T > | |
static DART_FORCE_INLINE T::ObjectPtrType | Allocate (Heap::Space space, intptr_t elements) |
template<typename T > | |
static DART_FORCE_INLINE T::ObjectPtrType | AllocateVariant (intptr_t class_id, Heap::Space space) |
template<typename T > | |
static DART_FORCE_INLINE T::ObjectPtrType | AllocateVariant (intptr_t class_id, Heap::Space space, intptr_t elements) |
static constexpr intptr_t | RoundedAllocationSize (intptr_t size) |
static ObjectPtr | Clone (const Object &orig, Heap::Space space, bool load_with_relaxed_atomics=false) |
template<typename T > | |
static DART_FORCE_INLINE uword | from_offset () |
template<typename T > | |
static DART_FORCE_INLINE uword | to_offset (intptr_t length=0) |
Friends | |
class | Class |
class | Symbols |
class | StringSlice |
template<typename CharType > | |
class | CharArray |
class | ConcatString |
class | OneByteString |
class | TwoByteString |
class | UntaggedOneByteString |
class | RODataSerializationCluster |
class | Pass2Visitor |
Additional Inherited Members | |
![]() | |
enum | NameVisibility { kInternalName = 0 , kScrubbedName , kUserVisibleName } |
enum class | NameDisambiguation { kYes , kNo } |
using | UntaggedObjectType = UntaggedObject |
using | ObjectPtrType = ObjectPtr |
![]() | |
ObjectPtr | ptr_ |
|
inlinevirtual |
|
inlinevirtual |
|
virtual |
Reimplemented from dart::Instance.
Definition at line 23691 of file object.cc.
|
inline |
|
inlinestatic |
Definition at line 13411 of file object.h.
intptr_t dart::String::CharSize | ( | ) | const |
intptr_t dart::String::CompareTo | ( | const String & | other | ) | const |
Definition at line 23638 of file object.cc.
|
static |
Definition at line 24037 of file object.cc.
|
static |
Definition at line 24048 of file object.cc.
|
static |
Definition at line 24052 of file object.cc.
|
static |
Definition at line 23834 of file object.cc.
|
static |
Definition at line 23811 of file object.cc.
|
static |
|
static |
Definition at line 23948 of file object.cc.
|
static |
Definition at line 23918 of file object.cc.
bool dart::String::EndsWith | ( | const String & | other | ) | const |
bool dart::String::Equals | ( | const char * | cstr | ) | const |
Definition at line 23565 of file object.cc.
|
virtual |
bool dart::String::Equals | ( | const int32_t * | characters, |
intptr_t | len | ||
) | const |
|
inline |
Definition at line 13337 of file object.h.
bool dart::String::Equals | ( | const String & | str, |
intptr_t | begin_index, | ||
intptr_t | len | ||
) | const |
bool dart::String::Equals | ( | const uint16_t * | characters, |
intptr_t | len | ||
) | const |
|
protected |
Definition at line 24299 of file object.cc.
|
inline |
|
static |
Definition at line 23861 of file object.cc.
|
static |
Definition at line 23733 of file object.cc.
|
static |
Definition at line 23739 of file object.cc.
|
static |
|
static |
Definition at line 23705 of file object.cc.
|
inlinestatic |
|
inline |
Definition at line 10216 of file object.h.
|
static |
|
static |
|
static |
|
staticprotected |
|
static |
Definition at line 23492 of file object.cc.
|
inlinestatic |
|
inline |
|
inlinevirtual |
Reimplemented from dart::Instance.
Definition at line 10257 of file object.h.
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
Definition at line 10177 of file object.h.
|
inline |
|
inline |
|
inlinestatic |
|
inlinestatic |
|
static |
|
static |
Definition at line 23774 of file object.cc.
|
static |
|
static |
|
static |
Definition at line 24004 of file object.cc.
|
static |
|
static |
Definition at line 24022 of file object.cc.
|
inlinevirtual |
Reimplemented from dart::Instance.
|
static |
Definition at line 24207 of file object.cc.
|
static |
Definition at line 233 of file object.cc.
Definition at line 287 of file object.cc.
|
static |
Definition at line 427 of file object.cc.
|
inlinestatic |
|
inlinestatic |
Definition at line 10449 of file object.h.
|
inlineprotected |
|
inlineprotected |
|
inline |
|
static |
|
static |
|
inlinestatic |
|
static |
Definition at line 24091 of file object.cc.
|
static |
Definition at line 24126 of file object.cc.
|
static |
Definition at line 24202 of file object.cc.
char * dart::String::ToMallocCString | ( | ) | const |
|
static |
void dart::String::ToUTF8 | ( | uint8_t * | utf8_array, |
intptr_t | array_len | ||
) | const |
|
static |
Definition at line 24172 of file object.cc.
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |
|
staticconstexpr |