Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(359)

Side by Side Diff: runtime/vm/snapshot.h

Issue 103913005: Introduce class TypeRef in the VM to fully support recursive types. (Closed) Base URL: http://dart.googlecode.com/svn/branches/bleeding_edge/dart/
Patch Set: Created 7 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « runtime/vm/raw_object_snapshot.cc ('k') | runtime/vm/snapshot.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2012, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 #ifndef VM_SNAPSHOT_H_ 5 #ifndef VM_SNAPSHOT_H_
6 #define VM_SNAPSHOT_H_ 6 #define VM_SNAPSHOT_H_
7 7
8 #include "platform/assert.h" 8 #include "platform/assert.h"
9 #include "vm/allocation.h" 9 #include "vm/allocation.h"
10 #include "vm/bitfield.h" 10 #include "vm/bitfield.h"
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after
54 class RawLiteralToken; 54 class RawLiteralToken;
55 class RawMint; 55 class RawMint;
56 class RawObject; 56 class RawObject;
57 class RawOneByteString; 57 class RawOneByteString;
58 class RawPatchClass; 58 class RawPatchClass;
59 class RawScript; 59 class RawScript;
60 class RawSmi; 60 class RawSmi;
61 class RawStacktrace; 61 class RawStacktrace;
62 class RawTokenStream; 62 class RawTokenStream;
63 class RawType; 63 class RawType;
64 class RawTypeRef;
64 class RawTypeParameter; 65 class RawTypeParameter;
65 class RawTypeArguments; 66 class RawTypeArguments;
66 class RawTwoByteString; 67 class RawTwoByteString;
67 class RawUnresolvedClass; 68 class RawUnresolvedClass;
68 class String; 69 class String;
69 class TokenStream; 70 class TokenStream;
70 class UnhandledException; 71 class UnhandledException;
71 72
72 // Serialized object header encoding is as follows: 73 // Serialized object header encoding is as follows:
73 // - Smi: the Smi value is written as is (last bit is not tagged). 74 // - Smi: the Smi value is written as is (last bit is not tagged).
(...skipping 175 matching lines...) Expand 10 before | Expand all | Expand 10 after
249 RawTwoByteString* NewTwoByteString(intptr_t len); 250 RawTwoByteString* NewTwoByteString(intptr_t len);
250 RawTypeArguments* NewTypeArguments(intptr_t len); 251 RawTypeArguments* NewTypeArguments(intptr_t len);
251 RawTokenStream* NewTokenStream(intptr_t len); 252 RawTokenStream* NewTokenStream(intptr_t len);
252 RawContext* NewContext(intptr_t num_variables); 253 RawContext* NewContext(intptr_t num_variables);
253 RawClass* NewClass(intptr_t class_id); 254 RawClass* NewClass(intptr_t class_id);
254 RawMint* NewMint(int64_t value); 255 RawMint* NewMint(int64_t value);
255 RawBigint* NewBigint(const char* hex_string); 256 RawBigint* NewBigint(const char* hex_string);
256 RawDouble* NewDouble(double value); 257 RawDouble* NewDouble(double value);
257 RawUnresolvedClass* NewUnresolvedClass(); 258 RawUnresolvedClass* NewUnresolvedClass();
258 RawType* NewType(); 259 RawType* NewType();
260 RawTypeRef* NewTypeRef();
259 RawTypeParameter* NewTypeParameter(); 261 RawTypeParameter* NewTypeParameter();
260 RawBoundedType* NewBoundedType(); 262 RawBoundedType* NewBoundedType();
261 RawMixinAppType* NewMixinAppType(); 263 RawMixinAppType* NewMixinAppType();
262 RawPatchClass* NewPatchClass(); 264 RawPatchClass* NewPatchClass();
263 RawClosureData* NewClosureData(); 265 RawClosureData* NewClosureData();
264 RawRedirectionData* NewRedirectionData(); 266 RawRedirectionData* NewRedirectionData();
265 RawFunction* NewFunction(); 267 RawFunction* NewFunction();
266 RawField* NewField(); 268 RawField* NewField();
267 RawLibrary* NewLibrary(); 269 RawLibrary* NewLibrary();
268 RawLibraryPrefix* NewLibraryPrefix(); 270 RawLibraryPrefix* NewLibraryPrefix();
(...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after
352 friend class LibraryPrefix; 354 friend class LibraryPrefix;
353 friend class Namespace; 355 friend class Namespace;
354 friend class LiteralToken; 356 friend class LiteralToken;
355 friend class PatchClass; 357 friend class PatchClass;
356 friend class Script; 358 friend class Script;
357 friend class Stacktrace; 359 friend class Stacktrace;
358 friend class TokenStream; 360 friend class TokenStream;
359 friend class Type; 361 friend class Type;
360 friend class TypeArguments; 362 friend class TypeArguments;
361 friend class TypeParameter; 363 friend class TypeParameter;
364 friend class TypeRef;
362 friend class UnresolvedClass; 365 friend class UnresolvedClass;
363 friend class WeakProperty; 366 friend class WeakProperty;
364 friend class MirrorReference; 367 friend class MirrorReference;
365 DISALLOW_COPY_AND_ASSIGN(SnapshotReader); 368 DISALLOW_COPY_AND_ASSIGN(SnapshotReader);
366 }; 369 };
367 370
368 371
369 class BaseWriter { 372 class BaseWriter {
370 public: 373 public:
371 // Size of the snapshot. 374 // Size of the snapshot.
(...skipping 242 matching lines...) Expand 10 before | Expand all | Expand 10 after
614 private: 617 private:
615 SnapshotWriter* writer_; 618 SnapshotWriter* writer_;
616 bool as_references_; 619 bool as_references_;
617 620
618 DISALLOW_COPY_AND_ASSIGN(SnapshotWriterVisitor); 621 DISALLOW_COPY_AND_ASSIGN(SnapshotWriterVisitor);
619 }; 622 };
620 623
621 } // namespace dart 624 } // namespace dart
622 625
623 #endif // VM_SNAPSHOT_H_ 626 #endif // VM_SNAPSHOT_H_
OLDNEW
« no previous file with comments | « runtime/vm/raw_object_snapshot.cc ('k') | runtime/vm/snapshot.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698