JSObject * JSObject::unwrap(uintN *flagsp) { JSObject *wrapped = this; uintN flags = 0; if (wrapped->isWrapper()) { flags |= static_cast<JSWrapper *>(wrapped->getProxyHandler())->flags(); wrapped = wrapped->getProxyPrivate().toObjectOrNull(); } if (flagsp) *flagsp = flags; return wrapped; }