Flutter Engine
The Flutter Engine
Public Member Functions | List of all members
dart::SetMessageSerializationCluster Class Reference
Inheritance diagram for dart::SetMessageSerializationCluster:
dart::MessageSerializationCluster dart::ZoneAllocated

Public Member Functions

 SetMessageSerializationCluster (Zone *zone, bool is_canonical, intptr_t cid)
 
 ~SetMessageSerializationCluster ()
 
void Trace (MessageSerializer *s, Object *object)
 
void WriteNodes (MessageSerializer *s)
 
void WriteEdges (MessageSerializer *s)
 
- Public Member Functions inherited from dart::MessageSerializationCluster
 MessageSerializationCluster (const char *name, MessagePhase phase, intptr_t cid, bool is_canonical=false)
 
virtual ~MessageSerializationCluster ()
 
virtual void Trace (MessageSerializer *s, Object *object)=0
 
virtual void WriteNodes (MessageSerializer *s)=0
 
virtual void WriteEdges (MessageSerializer *s)
 
virtual void TraceApi (ApiMessageSerializer *s, Dart_CObject *object)
 
virtual void WriteNodesApi (ApiMessageSerializer *s)
 
virtual void WriteEdgesApi (ApiMessageSerializer *s)
 
const char * name () const
 
MessagePhase phase () const
 
intptr_t cid () const
 
bool is_canonical () const
 
- Public Member Functions inherited from dart::ZoneAllocated
 ZoneAllocated ()
 
void * operator new (size_t size)
 
void * operator new (size_t size, Zone *zone)
 
void operator delete (void *pointer)
 

Additional Inherited Members

- Protected Member Functions inherited from dart::MessageSerializationCluster
 DISALLOW_COPY_AND_ASSIGN (MessageSerializationCluster)
 
- Protected Attributes inherited from dart::MessageSerializationCluster
const char *const name_
 
const MessagePhase phase_
 
const intptr_t cid_
 
const bool is_canonical_
 

Detailed Description

Definition at line 2203 of file message_snapshot.cc.

Constructor & Destructor Documentation

◆ SetMessageSerializationCluster()

dart::SetMessageSerializationCluster::SetMessageSerializationCluster ( Zone zone,
bool  is_canonical,
intptr_t  cid 
)
inline

Definition at line 2205 of file message_snapshot.cc.

2210 cid,
2211 is_canonical),
2212 objects_(zone, 0) {}
MessageSerializationCluster(const char *name, MessagePhase phase, intptr_t cid, bool is_canonical=false)

◆ ~SetMessageSerializationCluster()

dart::SetMessageSerializationCluster::~SetMessageSerializationCluster ( )
inline

Definition at line 2213 of file message_snapshot.cc.

2213{}

Member Function Documentation

◆ Trace()

void dart::SetMessageSerializationCluster::Trace ( MessageSerializer s,
Object object 
)
inlinevirtual

Implements dart::MessageSerializationCluster.

Definition at line 2215 of file message_snapshot.cc.

2215 {
2216 Set* set = static_cast<Set*>(object);
2217 objects_.Add(set);
2218
2219 // Compensation for bogus type prefix optimization.
2220 TypeArguments& args =
2221 TypeArguments::Handle(s->zone(), set->untag()->type_arguments());
2222 if (!args.IsNull() && (args.Length() != 1)) {
2223 args = args.TruncatedTo(1);
2224 set->untag()->set_type_arguments(args.ptr());
2225 }
2226
2227 s->Push(set->untag()->type_arguments());
2228 s->Push(set->untag()->data());
2229 s->Push(set->untag()->used_data());
2230 }
static Object & Handle()
Definition: object.h:407
struct MyStruct s
G_BEGIN_DECLS G_MODULE_EXPORT FlValue * args
DEF_SWITCHES_START aot vmservice shared library Name of the *so containing AOT compiled Dart assets for launching the service isolate vm snapshot The VM snapshot data that will be memory mapped as read only SnapshotAssetPath must be present isolate snapshot The isolate snapshot data that will be memory mapped as read only SnapshotAssetPath must be present cache dir Path to the cache directory This is different from the persistent_cache_path in embedder which is used for Skia shader cache icu native lib Path to the library file that exports the ICU data vm service The hostname IP address on which the Dart VM Service should be served If not set
Definition: switches.h:76

◆ WriteEdges()

void dart::SetMessageSerializationCluster::WriteEdges ( MessageSerializer s)
inlinevirtual

Reimplemented from dart::MessageSerializationCluster.

Definition at line 2241 of file message_snapshot.cc.

2241 {
2242 const intptr_t count = objects_.length();
2243 for (intptr_t i = 0; i < count; i++) {
2244 Set* set = objects_[i];
2245 s->WriteRef(set->untag()->type_arguments());
2246 s->WriteRef(set->untag()->data());
2247 s->WriteRef(set->untag()->used_data());
2248 }
2249 }
int count
Definition: FontMgrTest.cpp:50

◆ WriteNodes()

void dart::SetMessageSerializationCluster::WriteNodes ( MessageSerializer s)
inlinevirtual

Implements dart::MessageSerializationCluster.

Definition at line 2232 of file message_snapshot.cc.

2232 {
2233 const intptr_t count = objects_.length();
2234 s->WriteUnsigned(count);
2235 for (intptr_t i = 0; i < count; i++) {
2236 Set* set = objects_[i];
2237 s->AssignRef(set);
2238 }
2239 }

The documentation for this class was generated from the following file: