comparison src/share/vm/prims/jvm.cpp @ 8805:2c7663baeb67

8010017: lambda: reflection get(Declared)Methods support for default methods. Summary: Don't expose vm generated overpass (bridges to default methods). Reviewed-by: dholmes, fparain
author acorn
date Wed, 20 Mar 2013 11:43:56 -0400
parents 927a311d00f9
children 1916ca1dec2f
comparison
equal deleted inserted replaced
8803:a649f6511c04 8805:2c7663baeb67
1720 int num_methods = 0; 1720 int num_methods = 0;
1721 1721
1722 int i; 1722 int i;
1723 for (i = 0; i < methods_length; i++) { 1723 for (i = 0; i < methods_length; i++) {
1724 methodHandle method(THREAD, methods->at(i)); 1724 methodHandle method(THREAD, methods->at(i));
1725 if (!method->is_initializer()) { 1725 if (!method->is_initializer() && !method->is_overpass()) {
1726 if (!publicOnly || method->is_public()) { 1726 if (!publicOnly || method->is_public()) {
1727 ++num_methods; 1727 ++num_methods;
1728 } 1728 }
1729 } 1729 }
1730 } 1730 }
1734 objArrayHandle result (THREAD, r); 1734 objArrayHandle result (THREAD, r);
1735 1735
1736 int out_idx = 0; 1736 int out_idx = 0;
1737 for (i = 0; i < methods_length; i++) { 1737 for (i = 0; i < methods_length; i++) {
1738 methodHandle method(THREAD, methods->at(i)); 1738 methodHandle method(THREAD, methods->at(i));
1739 if (!method->is_initializer()) { 1739 if (!method->is_initializer() && !method->is_overpass()) {
1740 if (!publicOnly || method->is_public()) { 1740 if (!publicOnly || method->is_public()) {
1741 oop m = Reflection::new_method(method, UseNewReflection, false, CHECK_NULL); 1741 oop m = Reflection::new_method(method, UseNewReflection, false, CHECK_NULL);
1742 result->obj_at_put(out_idx, m); 1742 result->obj_at_put(out_idx, m);
1743 ++out_idx; 1743 ++out_idx;
1744 } 1744 }