Fixed issues when dealing with java Boolean (Object type), and Kotlin Boolean props. #5
Add this suggestion to a batch that can be applied as a single commit. This suggestion is invalid because no changes were made to the code. Suggestions cannot be applied while the pull request is closed. Suggestions cannot be applied while viewing a subset of changes. Only one suggestion per line can be applied in a batch. Add this suggestion to a batch that can be applied as a single commit. Applying suggestions on deleted lines is not supported. You must change the existing code in this line in order to create a valid suggestion. Outdated suggestions cannot be applied. This suggestion has been applied or marked resolved. Suggestions cannot be applied from pending reviews. Suggestions cannot be applied on multi-line comments. Suggestions cannot be applied while the pull request is queued to merge. Suggestion cannot be applied right now. Please check back later.
Here are the fixes.
Fixed a failure when attempting to find the appropriate resolver for properties on data classes that have a return type of java.lang.Boolean. The java.lang.Boolean is not assignable to kotlin.Boolean::class.java. Kotlin's java platform types map to the primitive types, i.e. 'boolean'. In this case, we now check for 'boolean' as the class name. If there is a better way to do this, I'm not immediately aware. Added a test case to cover the Boolean case.
Another failure occurred when assuming a Boolean|boolean value on a class used the 'is' prefix. This is a Java convention and is not enforced. Kotlin does not generate 'is' properties when declaring Boolean properties as it generates a 'get' prefix on vals/vars. Kotlin Boolean values would therefore fail the method lookup. Now first trying an 'is' then, if a boolean, trying the 'is' prefix as a last resort.