blob: 05734ce0ee227a1cf06e7fe5324e8d141eeedb0a (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
|
## Fix Eclipse's HandleCleanup
* Fix the AST.Node view of the innards of the method. Now nested applications of @Cleanup blow everything up.
* Replace the multi-catch block strategy at least with more catch blocks (all encapsulating try/catch blocks' caught types as well), or use sneakyThrow, which is even better.
* Fix PrintAST to always run at the very very very end.
## Fix eclipse's pointers
* We really need to do more work on setting positions properly.
## Eclipse insertion point for newly generated code
We need to figure out which of the bodyStart/bodyDeclarationStart/sourceStart blocks are used as where insertions happen, and set it to the entire line of a field and not just the annotation.
Don't forget to extend past the opening brace for @Data!
## Website
See the following for CC licences:
http://creativecommons.org/license/results-one?q_1=2&q_1=1&field_commercial=yes&field_derivatives=yes&field_jurisdiction=us&field_format=&field_worktitle=lombok&field_attribute_to_name=&field_attribute_to_url=&field_sourceurl=&field_morepermissionsurl=&lang=en_US&language=en_US&n_questions=3
## javadoc
Either just let people run lombokc and javadoc that, -or-, use a doclet and presumptively cast our way into javadoc's AST.
## lombokc
To keep comments, try:
com.sun.tools.javac.main.JavaCompiler.instance(context).keepComments = true;
## netbeans agent plugin
module: java.source
class: org.netbeans.modules.java.source.parsing.JavacParser
to instrument:
class: JavacTaskImpl
method1: public JCBlock reparseMethodBody(CompilationUnitTree topLevel, MethodTree methodBody, String newText, int annonIndex) {}
method2: public Iterable<? extends CompilationUnitTree> parse();
in either case, returned value could be null/empty. CompilationUnitTree are MethodTree are superinterfaces of JCCU and JCMD.
problem: the agent stops receiving requests to transform classes early in the netbeans load process.
Possible work-around: Rewrite the entire JavacTaskImpl.class file on disk. It's in:
/NetBeans 6.7 RC3.app/Contents/Resources/NetBeans/java2/modules/ext/javac-impl-nb-7.0-b07.jar
Some work has been done in the addNetbeans branch.
## website
## javadoc
## screencasts
## installers
## hook into class file writing
on javac: com.sun.tools.javac.jvm.ClassWriter.writeClassFile(OutputStream out, ClassSymbol c) - hack the one line where out.write() is called.
|