AST 转换在 Groovy 中实现。使用 AST 转换的实际示例是什么?
问问题
1580 次
3 回答
4
此页面有如何使用的实际示例:@Singleton、@Lazy、@Immutable、@Delegate、@Newify、@Category、@Mixin、@PackageScope
于 2010-02-05T15:10:52.470 回答
3
像这样的场景:
- 授权检查 - 通过从上下文检查角色来确保安全
- 打印调用方法的参数值
- 断言参数不为空或任何验证
- 检查方法的各种入口条件/前置条件
- 通用 AOP 风格 BeforeMethod() 实现
- 创建一个方法并将其标记为 runnable 或 main 方法
看看我在AST AOP和AST Param not null上的博客文章
希望这可以帮助!
于 2010-02-10T23:41:32.677 回答
0
该页面提供了大多数使用 AST 转换的实际示例。我经常使用@Delegate 委托给另一个类或使用@Lazy 进行延迟加载。@Grab 非常适合从 Maven/ivy 存储库中提取依赖项。所有这些都基于 AST 转换并且是核心语言的一部分。
您也可以直接使用转换,但您想要它们的大部分内容已经构建。你可以用其他语言做你可能想用 AOP 做的事情。
于 2010-02-05T13:46:38.180 回答