diff options
author | Reinier Zwitserloot <reinier@zwitserloot.com> | 2013-07-07 06:33:18 +0200 |
---|---|---|
committer | Reinier Zwitserloot <reinier@zwitserloot.com> | 2013-07-07 21:49:47 +0200 |
commit | 446a8e33e00cb9effe1d1e181cac192a70648412 (patch) | |
tree | 78eb63e711d758010c2d2d7dbac9857571f4d187 /src/stubs/com | |
parent | 5326cfa8e80a55c056f497894288924022c9bbd7 (diff) | |
download | lombok-446a8e33e00cb9effe1d1e181cac192a70648412.tar.gz lombok-446a8e33e00cb9effe1d1e181cac192a70648412.tar.bz2 lombok-446a8e33e00cb9effe1d1e181cac192a70648412.zip |
FINALLY! Found the cause of a really weird eclipse bug,
where _ANY_ mention of com.sun.tools.javac.tree.TreeMaker,
anywhere in a source file, would disable pretty much every
intelligent part of what makes the 'I' in IDE in eclipse:
No auto-complete, no 'go to declaration', etcetera, but only
since Eclipse Juno (not fixed in Kepler either). It's the
presence of src/stubs/com/sun/tools/javac/util/Context.java.
I've moved Context to a special stubs directory that's only used
for javac (so that we still get the benefit of getting some
warnings and such when making command line builds), and removed
the @Override annotations for where the stubbing is relevant
(for methods that exist in javac7 but not in javac6 on interfaces
we create implementations of). Furthermore, I did some extremely
tricky work in making our version actuall compatible with the
exact class signatures of both javac6- and javac7+'s versions;
generation of synthetic methods for reified type parameters was
causing havoc.
A big stack of 'here be voodoo' comments unfortunately added to
explain it all; necessary evil.
Diffstat (limited to 'src/stubs/com')
-rw-r--r-- | src/stubs/com/sun/tools/javac/util/Context.java | 31 |
1 files changed, 0 insertions, 31 deletions
diff --git a/src/stubs/com/sun/tools/javac/util/Context.java b/src/stubs/com/sun/tools/javac/util/Context.java deleted file mode 100644 index 06b8ff4d..00000000 --- a/src/stubs/com/sun/tools/javac/util/Context.java +++ /dev/null @@ -1,31 +0,0 @@ -/* - * These are stub versions of various bits of javac-internal API (for various different versions of javac). Lombok is compiled against these. - */ -package com.sun.tools.javac.util; - -public class Context { - public static class Key<T> { - } - - public interface Factory<T> { - T make(Context c); - T make(); - } - - public <T> void put(Key<T> key, Factory<T> fac) { - } - - public <T> void put(Key<T> key, T data) { - } - - public <T> void put(Class<T> clazz, T data) { - } - - public <T> T get(Key<T> key) { - return null; - } - - public <T> T get(Class<T> clazz) { - return null; - } -} |