Add an iterator for PropInitVec
commit00f43c81969274568944701d0d573ca0b576a902
authorJoseph Griego <jgriego@fb.com>
Fri, 6 Dec 2019 16:12:10 +0000 (6 08:12 -0800)
committerFacebook Github Bot <facebook-github-bot@users.noreply.github.com>
Fri, 6 Dec 2019 16:18:38 +0000 (6 08:18 -0800)
treec8cbbb3329029806bc1db0d0e932aefa2eae7b0e
parent4c7a6ff7fef1a63ed05e695729d0932ebae1afc2
Add an iterator for PropInitVec

Summary:
This is relatively a lot of code but avoids us needing to index into both the
object data props and the propinitvec separately, which is slow. Instead, we
want to be able to stride both containers at the same time in many places.

Reviewed By: ricklavoie

Differential Revision: D18647106

fbshipit-source-id: 8635aa987d65d2a84de3334576cbd830dad01196
hphp/runtime/base/object-data.cpp
hphp/runtime/vm/class-inl.h
hphp/runtime/vm/class.h
hphp/util/bitset-view.h