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

Unified Diff: src/parsing/parser.h

Issue 1817093002: Add parsing for object types (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@types-1810943002-tuple
Patch Set: Created 4 years, 9 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
Index: src/parsing/parser.h
diff --git a/src/parsing/parser.h b/src/parsing/parser.h
index e63924fade8d2cd9fe2b9926e5c55062f74c104a..57896254ea8215f33bcd05c574ae00af46f17002 100644
--- a/src/parsing/parser.h
+++ b/src/parsing/parser.h
@@ -361,6 +361,8 @@ class ParserTraits {
typedef v8::internal::typesystem::FormalParameter* FormalParameter;
typedef ZoneList<v8::internal::typesystem::FormalParameter*>*
FormalParameters;
+ typedef v8::internal::typesystem::TypeMember* TypeMember;
+ typedef ZoneList<v8::internal::typesystem::TypeMember*>* TypeMembers;
};
// For constructing objects returned by the traversing functions.
@@ -510,11 +512,16 @@ class ParserTraits {
return typ_pars == nullptr;
}
V8_INLINE ZoneList<typesystem::TypeParameter*>* EmptyTypeParameters() const;
+ static ZoneList<typesystem::FormalParameter*>* NullFormalParameters() {
+ return nullptr;
+ }
V8_INLINE ZoneList<typesystem::FormalParameter*>* EmptyFormalParameters()
const;
static ZoneList<const AstRawString*>* NullIdentifierList() { return nullptr; }
V8_INLINE ZoneList<const AstRawString*>* EmptyIdentifierList() const;
static typesystem::Type* HoleTypeElement() { return nullptr; }
+ V8_INLINE ZoneList<typesystem::TypeMember*>* EmptyTypeMembers() const;
+ static typesystem::TypeMember* EmptyTypeMember() { return nullptr; }
// Used in error return values.
static ZoneList<Expression*>* NullExpressionList() {
@@ -1138,6 +1145,12 @@ ZoneList<const AstRawString*>* ParserTraits::EmptyIdentifierList() const {
}
+ZoneList<typesystem::TypeMember*>* ParserTraits::EmptyTypeMembers() const {
+ return new (parser_->zone())
+ ZoneList<typesystem::TypeMember*>(4, parser_->zone());
+}
+
+
const AstRawString* ParserTraits::EmptyIdentifierString() {
return parser_->ast_value_factory()->empty_string();
}

Powered by Google App Engine
This is Rietveld 408576698