gecko-dev/build/annotationProcessors/classloader
Jim Chen 7595348845 Bug 1192079 - Support inner classes in generated JNI wrapper; r=snorp
Currently, when we generate JNI wrapper for an inner class, the
resulting C++ class will not actually be a nested class of the enclosing
class. As a result, the class can be confusing to use. For example,
wrapping Java class GeckoThread.State results in two unrelated C++
classes, GeckoThread and State, and it'd be confusing to use State by
itself.

This patch adds support for inner classes. We start by scanning only for
top-level classes, and when processing each top-level class, we
recursively scan for inner classes through
JarClassIterator.getInnerClasses() and CodeGenerator.generateClasses().
For each Java inner classes, the resulting C++ class will be a nested
class. For example, wrapping GeckoThread.State will produce
widget::GeckoThread and widget::GeckoThread::State.
2015-08-13 00:53:39 -04:00
..
AnnotatableEntity.java Bug 1178850 - Generate naive method bindings in annotation processor; r=snorp 2015-07-10 23:41:35 -04:00
ClassWithOptions.java Bug 913985: Part 3 - Update the annotation processor to generate wrapper classes. r=kats 2013-11-21 20:41:28 +00:00
IterableJarLoadingURLClassLoader.java Bug 913985: Part 3 - Update the annotation processor to generate wrapper classes. r=kats 2013-11-21 20:41:28 +00:00
JarClassIterator.java Bug 1192079 - Support inner classes in generated JNI wrapper; r=snorp 2015-08-13 00:53:39 -04:00