Add field/method skipping helper functions to DexFile

Specifically added SkipStaticFields, SkipInstanceFields,
SkipAllFields, SkipStaticMethods, and SkipVirtualMethods.

Also applied the helpers to the code base.

Test: test-art-host
Change-Id: Idda77f9a6e2564c2e588d2bbe11cc320063fdb32
diff --git a/runtime/dex_file_tracking_registrar.cc b/runtime/dex_file_tracking_registrar.cc
index f41a50b..14548ce 100644
--- a/runtime/dex_file_tracking_registrar.cc
+++ b/runtime/dex_file_tracking_registrar.cc
@@ -134,10 +134,7 @@
     const uint8_t* class_data = dex_file_->GetClassData(cd);
     if (class_data != nullptr) {
       ClassDataItemIterator cdit(*dex_file_, class_data);
-      // Skipping Fields
-      while (cdit.HasNextStaticField() || cdit.HasNextInstanceField()) {
-        cdit.Next();
-      }
+      cdit.SkipAllFields();
       while (cdit.HasNextDirectMethod()) {
         const DexFile::CodeItem* code_item = cdit.GetMethodCodeItem();
         if (code_item != nullptr) {
@@ -157,10 +154,7 @@
     const uint8_t* class_data = dex_file_->GetClassData(cd);
     if (class_data != nullptr) {
       ClassDataItemIterator cdit(*dex_file_, class_data);
-      // Skipping Fields
-      while (cdit.HasNextStaticField() || cdit.HasNextInstanceField()) {
-        cdit.Next();
-      }
+      cdit.SkipAllFields();
       while (cdit.HasNextDirectMethod()) {
         const DexFile::CodeItem* code_item = cdit.GetMethodCodeItem();
         if (code_item != nullptr) {
@@ -181,10 +175,7 @@
     const uint8_t* class_data = dex_file_->GetClassData(cd);
     if (class_data != nullptr) {
       ClassDataItemIterator cdit(*dex_file_, class_data);
-      // Skipping Fields
-      while (cdit.HasNextStaticField() || cdit.HasNextInstanceField()) {
-        cdit.Next();
-      }
+      cdit.SkipAllFields();
       while (cdit.HasNextDirectMethod()) {
         const DexFile::MethodId& methodid_item = dex_file_->GetMethodId(cdit.GetMemberIndex());
         const char * methodid_name = dex_file_->GetMethodName(methodid_item);