MCPcopy Create free account
hub / github.com/CodingGay/BlackDex / Next

Method Next

Bcore/src/main/cpp/dex/dex_file.h:1245–1271  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1243 return pos_ < EndOfVirtualMethodsPos();
1244 }
1245 inline void Next() {
1246 pos_++;
1247 if (pos_ < EndOfStaticFieldsPos()) {
1248 last_idx_ = GetMemberIndex();
1249 ReadClassDataField();
1250 } else if (pos_ == EndOfStaticFieldsPos() && NumInstanceFields() > 0) {
1251 last_idx_ = 0; // transition to next array, reset last index
1252 ReadClassDataField();
1253 } else if (pos_ < EndOfInstanceFieldsPos()) {
1254 last_idx_ = GetMemberIndex();
1255 ReadClassDataField();
1256 } else if (pos_ == EndOfInstanceFieldsPos() && NumDirectMethods() > 0) {
1257 last_idx_ = 0; // transition to next array, reset last index
1258 ReadClassDataMethod();
1259 } else if (pos_ < EndOfDirectMethodsPos()) {
1260 last_idx_ = GetMemberIndex();
1261 ReadClassDataMethod();
1262 } else if (pos_ == EndOfDirectMethodsPos() && NumVirtualMethods() > 0) {
1263 last_idx_ = 0; // transition to next array, reset last index
1264 ReadClassDataMethod();
1265 } else if (pos_ < EndOfVirtualMethodsPos()) {
1266 last_idx_ = GetMemberIndex();
1267 ReadClassDataMethod();
1268 } else {
1269 DCHECK(!HasNext());
1270 }
1271 }
1272 uint32_t GetMemberIndex() const {
1273 if (pos_ < EndOfInstanceFieldsPos()) {
1274 return last_idx_ + field_.field_idx_delta_;

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected