在匿名内部类中的字段上使用源注释?

问题描述 投票:0回答:1

我是预处理器的新手,我正在尝试执行以下代码:

public class foo {

 private Map<String, Runnable> reflectivelyInitializedMap;

 private MyObject bar = new MyObject() {
   @ExternalApi
   private Runnable makePublic;
 }

 // I want to generate the following method:
 public void makePublic(){
   reflectivelyInitializedMap.get("makePublic").run();
 }

}

我无法在预处理器中捕获内部注释字段“makePublic”。这甚至可能吗?

java annotations preprocessor auto-generate
1个回答
0
投票

好吧,这似乎不可能。我做了以下事情:

public class foo {

 private Map<String, Runnable> reflectivelyInitializedMap;

 @ExternalApi("makePublic")
 private MyObject bar = new MyObject() {
   private Runnable makePublic;
 }

 // I want to generate the following method:
 public void makePublic(){
   reflectivelyInitializedMap.get("makePublic").run();
 }

}
© www.soinside.com 2019 - 2024. All rights reserved.