422423424425426427428429430431432
b.invoke(bp.getReadMethod()); Label noMatch = b.createLabel(); b.ifNullBranch(noMatch, false); b.loadConstant(true); b.returnValue(TypeDesc.BOOLEAN); noMatch.setLocation(); } b.loadConstant(false);
428429430431432433434435436437438
noMatch.setLocation(); } b.loadConstant(false); b.returnValue(TypeDesc.BOOLEAN); searchNotNull.setLocation(); // Handle search for non-null value. Search non-primitive properties // first, to avoid object conversion.
456457458459460461462463464465466
b.invokeVirtual(Object.class.getName(), "equals", TypeDesc.BOOLEAN, params); Label noMatch = b.createLabel(); b.ifZeroComparisonBranch(noMatch, "=="); b.loadConstant(true); b.returnValue(TypeDesc.BOOLEAN); noMatch.setLocation(); } }
463464465466467468469470471472473
noMatch.setLocation(); } } b.loadConstant(false); b.returnValue(TypeDesc.BOOLEAN); } /** * Returns two arrays of BeanProperties. Array 0 contains read * BeanProperties, array 1 contains the write BeanProperties.