jvmtiError createTagsForClasses()

in src/sizes/retained_size_action.h [57:74]


    jvmtiError createTagsForClasses(JNIEnv *env, jvmtiEnv *jvmti, jobjectArray classesArray) {
        for (jsize i = 0; i < this->env->GetArrayLength(classesArray); i++) {
            jobject classObject = this->env->GetObjectArrayElement(classesArray, i);
            jvmtiError err = tagClassAndItsInheritors(env, jvmti, classObject, [i](jlong oldTag) -> jlong {
                ClassTag *classTag = tagToClassTagPointer(oldTag);
                if (classTag != nullptr) {
                    classTag->ids.push_back(i);
                } else {
                    return pointerToTag(ClassTag::create(static_cast<query_size_t>(i)));
                }

                return 0;
            });
            if (err != JVMTI_ERROR_NONE) return err;
        }

        return JVMTI_ERROR_NONE;
    }