зеркало из https://github.com/mozilla/gecko-dev.git
Bug 953316 - Add all the other object flags to JSObject::dump's output. r=bhackett
--HG-- extra : rebase_source : 82e7371ceb07550f918c9012c57dab937cee7214
This commit is contained in:
Родитель
5d732089e1
Коммит
4641b211fe
|
@ -5544,6 +5544,13 @@ JSObject::dump()
|
||||||
if (obj->isDelegate()) fprintf(stderr, " delegate");
|
if (obj->isDelegate()) fprintf(stderr, " delegate");
|
||||||
if (!obj->is<ProxyObject>() && !obj->nonProxyIsExtensible()) fprintf(stderr, " not_extensible");
|
if (!obj->is<ProxyObject>() && !obj->nonProxyIsExtensible()) fprintf(stderr, " not_extensible");
|
||||||
if (obj->isIndexed()) fprintf(stderr, " indexed");
|
if (obj->isIndexed()) fprintf(stderr, " indexed");
|
||||||
|
if (obj->isBoundFunction()) fprintf(stderr, " bound_function");
|
||||||
|
if (obj->isVarObj()) fprintf(stderr, " varobj");
|
||||||
|
if (obj->watched()) fprintf(stderr, " watched");
|
||||||
|
if (obj->isIteratedSingleton()) fprintf(stderr, " iterated_singleton");
|
||||||
|
if (obj->isNewTypeUnknown()) fprintf(stderr, " new_type_unknown");
|
||||||
|
if (obj->hasUncacheableProto()) fprintf(stderr, " has_uncacheable_proto");
|
||||||
|
if (obj->hadElementsAccess()) fprintf(stderr, " had_elements_access");
|
||||||
|
|
||||||
if (obj->isNative()) {
|
if (obj->isNative()) {
|
||||||
if (obj->inDictionaryMode())
|
if (obj->inDictionaryMode())
|
||||||
|
|
|
@ -499,6 +499,9 @@ class JSObject : public js::ObjectImpl
|
||||||
* to recover this information in the object's type information after it
|
* to recover this information in the object's type information after it
|
||||||
* is purged on GC.
|
* is purged on GC.
|
||||||
*/
|
*/
|
||||||
|
bool isIteratedSingleton() const {
|
||||||
|
return lastProperty()->hasObjectFlag(js::BaseShape::ITERATED_SINGLETON);
|
||||||
|
}
|
||||||
bool setIteratedSingleton(js::ExclusiveContext *cx) {
|
bool setIteratedSingleton(js::ExclusiveContext *cx) {
|
||||||
return setFlag(cx, js::BaseShape::ITERATED_SINGLETON);
|
return setFlag(cx, js::BaseShape::ITERATED_SINGLETON);
|
||||||
}
|
}
|
||||||
|
@ -507,6 +510,9 @@ class JSObject : public js::ObjectImpl
|
||||||
* Mark an object as requiring its default 'new' type to have unknown
|
* Mark an object as requiring its default 'new' type to have unknown
|
||||||
* properties.
|
* properties.
|
||||||
*/
|
*/
|
||||||
|
bool isNewTypeUnknown() const {
|
||||||
|
return lastProperty()->hasObjectFlag(js::BaseShape::NEW_TYPE_UNKNOWN);
|
||||||
|
}
|
||||||
static bool setNewTypeUnknown(JSContext *cx, const js::Class *clasp, JS::HandleObject obj);
|
static bool setNewTypeUnknown(JSContext *cx, const js::Class *clasp, JS::HandleObject obj);
|
||||||
|
|
||||||
/* Set a new prototype for an object with a singleton type. */
|
/* Set a new prototype for an object with a singleton type. */
|
||||||
|
|
|
@ -560,6 +560,9 @@ class BaseShape : public gc::BarrieredCell<BaseShape>
|
||||||
* be unset (except during object densification of sparse indexes), and
|
* be unset (except during object densification of sparse indexes), and
|
||||||
* are transferred from shape to shape as the object's last property
|
* are transferred from shape to shape as the object's last property
|
||||||
* changes.
|
* changes.
|
||||||
|
*
|
||||||
|
* If you add a new flag here, please add appropriate code to
|
||||||
|
* JSObject::dump to dump it as part of object representation.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
DELEGATE = 0x8,
|
DELEGATE = 0x8,
|
||||||
|
|
Загрузка…
Ссылка в новой задаче