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

Unified Diff: runtime/vm/object.h

Issue 1420103006: Shared token objects (Closed) Base URL: https://github.com/dart-lang/sdk.git@master
Patch Set: catch up Created 5 years, 2 months 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « runtime/vm/isolate.cc ('k') | runtime/vm/object.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: runtime/vm/object.h
diff --git a/runtime/vm/object.h b/runtime/vm/object.h
index 46b5c68af9106c5268f2fa90dc10cf8a7d9cebd9..770bd0ca353a58b479428ffc526270af9641820f 100644
--- a/runtime/vm/object.h
+++ b/runtime/vm/object.h
@@ -3130,8 +3130,8 @@ class LiteralToken : public Object {
class TokenStream : public Object {
public:
- RawArray* TokenObjects() const;
- void SetTokenObjects(const Array& value) const;
+ RawGrowableObjectArray* TokenObjects() const;
+ void SetTokenObjects(const GrowableObjectArray& value) const;
RawExternalTypedData* GetStream() const;
void SetStream(const ExternalTypedData& stream) const;
@@ -3151,7 +3151,11 @@ class TokenStream : public Object {
static RawTokenStream* New(intptr_t length);
static RawTokenStream* New(const Scanner::GrowableTokenStream& tokens,
- const String& private_key);
+ const String& private_key,
+ bool use_shared_tokens);
+
+ static void OpenSharedTokenList(Isolate* isolate);
+ static void CloseSharedTokenList(Isolate* isolate);
// The class Iterator encapsulates iteration over the tokens
// in a TokenStream object.
@@ -3196,7 +3200,7 @@ class TokenStream : public Object {
TokenStream& tokens_;
ExternalTypedData& data_;
ReadStream stream_;
- Array& token_objects_;
+ GrowableObjectArray& token_objects_;
Object& obj_;
intptr_t cur_token_pos_;
Token::Kind cur_token_kind_;
@@ -3233,7 +3237,8 @@ class Script : public Object {
RawTokenStream* tokens() const { return raw_ptr()->tokens_; }
- void Tokenize(const String& private_key) const;
+ void Tokenize(const String& private_key,
+ bool use_shared_tokens = true) const;
RawLibrary* FindLibrary() const;
RawString* GetLine(intptr_t line_number,
« no previous file with comments | « runtime/vm/isolate.cc ('k') | runtime/vm/object.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698