< prev index next >

src/share/vm/runtime/reflectionUtils.cpp

Print this page

        

*** 25,35 **** #include "precompiled.hpp" #include "classfile/javaClasses.hpp" #include "memory/universe.inline.hpp" #include "runtime/reflectionUtils.hpp" ! KlassStream::KlassStream(instanceKlassHandle klass, bool local_only, bool classes_only, bool walk_defaults) { _klass = _base_klass = klass; _base_class_search_defaults = false; _defaults_checked = false; if (classes_only) { --- 25,35 ---- #include "precompiled.hpp" #include "classfile/javaClasses.hpp" #include "memory/universe.inline.hpp" #include "runtime/reflectionUtils.hpp" ! KlassStream::KlassStream(InstanceKlass* klass, bool local_only, bool classes_only, bool walk_defaults) { _klass = _base_klass = klass; _base_class_search_defaults = false; _defaults_checked = false; if (classes_only) {
*** 46,65 **** bool KlassStream::eos() { if (index() >= 0) return false; if (_local_only) return true; if (!_klass->is_interface() && _klass->super() != NULL) { // go up superclass chain (not for interfaces) ! _klass = _klass->super(); // Next for method walks, walk default methods } else if (_walk_defaults && (_defaults_checked == false) && (_base_klass->default_methods() != NULL)) { _base_class_search_defaults = true; _klass = _base_klass; _defaults_checked = true; } else { // Next walk transitive interfaces if (_interface_index > 0) { ! _klass = _interfaces->at(--_interface_index); } else { return true; } } _index = length(); --- 46,65 ---- bool KlassStream::eos() { if (index() >= 0) return false; if (_local_only) return true; if (!_klass->is_interface() && _klass->super() != NULL) { // go up superclass chain (not for interfaces) ! _klass = InstanceKlass::cast(_klass->super()); // Next for method walks, walk default methods } else if (_walk_defaults && (_defaults_checked == false) && (_base_klass->default_methods() != NULL)) { _base_class_search_defaults = true; _klass = _base_klass; _defaults_checked = true; } else { // Next walk transitive interfaces if (_interface_index > 0) { ! _klass = InstanceKlass::cast(_interfaces->at(--_interface_index)); } else { return true; } } _index = length();
< prev index next >