summaryrefslogtreecommitdiff
path: root/js/src/frontend/FullParseHandler.h
diff options
context:
space:
mode:
Diffstat (limited to 'js/src/frontend/FullParseHandler.h')
-rw-r--r--js/src/frontend/FullParseHandler.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/js/src/frontend/FullParseHandler.h b/js/src/frontend/FullParseHandler.h
index a5a5bd16a0..eeb4432e49 100644
--- a/js/src/frontend/FullParseHandler.h
+++ b/js/src/frontend/FullParseHandler.h
@@ -74,6 +74,10 @@ class FullParseHandler
return node->isKind(PNK_DOT) || node->isKind(PNK_ELEM);
}
+ bool isOptionalPropertyAccess(ParseNode* node) {
+ return node->isKind(PNK_OPTDOT) || node->isKind(PNK_OPTELEM);
+ }
+
bool isFunctionCall(ParseNode* node) {
// Note: super() is a special form, *not* a function call.
return node->isKind(PNK_CALL);
@@ -949,7 +953,9 @@ class FullParseHandler
return pn->isKind(PNK_CALL);
}
PropertyName* maybeDottedProperty(ParseNode* pn) {
- return pn->is<PropertyAccess>() ? &pn->as<PropertyAccess>().name() : nullptr;
+ return pn->is<PropertyAccessBase>() ?
+ &pn->as<PropertyAccessBase>().name() :
+ nullptr;
}
JSAtom* isStringExprStatement(ParseNode* pn, TokenPos* pos) {
if (JSAtom* atom = pn->isStringExprStatement()) {