JNI: Add @JCaller annotation

@JCaller is used on a parameter in a static native method to indicate
that a native binding should be generated as if that parameter
was calling a non-static function with the same signature.

This allows for easy conversion from non-static methods to static methods
without also modifying native method signatures.

This change is motivated by an impending refactor to the new JNI
interface (which will use all static methods).

Bug:898261
Change-Id: I37b2bb5ecf2da9ef33a34a61a35a43b8e2cdb838
Reviewed-on: https://chromium-review.googlesource.com/c/1358003
Reviewed-by: Eric Stevenson <estevenson@chromium.org>
Reviewed-by: agrieve <agrieve@chromium.org>
Commit-Queue: Aiden Benner <abenner@google.com>
5 files changed