如何在setter模板中调用实时模板函数?

时间:2016-04-01 04:28:01

标签: java templates intellij-idea

这是关于实时模板的answer。它使用capitalizeunderscoresToCamelCase。如何从setter tempalate调用这些函数?简单地$underscoresToCamelCase不起作用:(

1 个答案:

答案 0 :(得分:0)

这是不可能的,因为您无法访问速度模板中的实时模板上下文。

查看速度上下文。它是在org.jetbrains.java.generate.GenerationUtil#velocityGenerateCode方法中创建的。

在力度模板中,您可以访问力度模板中的不同值,如:

  vc.put("helper", GenerationHelper.class);
  vc.put("StringUtil", StringUtil.class);

没有代表像实时模板引擎这样的东西的值。

此外,与生成方法相比,实时模板在动态上下文(语法树中的节点)中起作用。他们使用速度模板和固定上下文生成源代码。