WIP: readString(MutableHandlePropertyName) draft
authorDavid Teller <dteller@mozilla.com>
Sun, 06 Aug 2017 10:43:45 +0200
changeset 641387 5237c781673f893446d93169f7ffcc7edf8c207c
parent 641386 f98c5a2d9182f0980d5e2767386b7342eef0b436
child 641388 d8dfa3ef84a0573a298c4bcd02146d534290d595
push id72504
push userdteller@mozilla.com
push dateSun, 06 Aug 2017 22:28:40 +0000
milestone57.0a1
WIP: readString(MutableHandlePropertyName) MozReview-Commit-ID: GgSk4OZaygK
js/src/frontend/BinSource.cpp
--- a/js/src/frontend/BinSource.cpp
+++ b/js/src/frontend/BinSource.cpp
@@ -2289,16 +2289,36 @@ ASTReader::parseSwitchCase(SimpleTokenRe
     Unused << test.release();
     Unused << statements.release();
 
     out = Move(result);
     return true;
 }
 
 bool
+ASTReader::readString(SimpleTokenReader* reader, MutableHandle<PropertyName*> out) {
+    if (out) {
+        return this->raiseError();
+    }
+
+    RootedAtom atom(cx);
+
+    if (!this->readString(reader, &atom)) {
+        return false;
+    }
+
+    if (!atom) {
+        out.set(nullptr);
+    } else {
+        out.set(atom->asPropertyName());
+    }
+    return true;
+}
+
+bool
 ASTReader::readString(SimpleTokenReader* reader, Maybe<std::string>& out) {
     if (out) {
         return this->raiseError();
     }
 
     if (!reader->readMaybeString(&out)) {
         return false;
     }