首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用deftype实现具有类型参数的泛型接口

使用deftype实现具有类型参数的泛型接口
EN

Stack Overflow用户
提问于 2020-01-04 01:37:24
回答 1查看 106关注 0票数 1

可以将类型参数传递到由deftype实现的泛型接口中吗?我正在尝试使用一个严重依赖类型参数的框架,但显然无法使用纯Clojure做到这一点。我可以退回到纯Java,但由于其他原因,它使代码和构建配置变得更加繁琐,所以理想情况下,我希望保持它的纯净。

我想写的Java等价代码如下所示:

代码语言:javascript
复制
public class BlahBlahSerializer implements SerializationCustomSerializer<BlahBlah, BlahBlahProxy> {
  /* implementation here */
}

我正在寻找一种用Clojure编写类似以下内容的方法:

代码语言:javascript
复制
(deftype BlahBlahSerializer []
  ^{:generic-type-parameters [BlahBlah BlahBlahProxy]} SerializationCustomSerializer
  /* implementation here */)

这是完全可能的吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-01-15 08:21:00

在为Apache光束编写clojure库时,我遇到了这个问题,在这个库中,Beam将泛型的反射用于各种目的,并且无法找到解决它的方法。我的结论是,没有办法使用clojure将此信息放入发出的类中,尽管这不是决定性的。我的解决方案是编写小型类,这些类在Java中定义了这些东西,但其方法实现立即委托给Clojure代码。

https://github.com/zendesk/clj-headlights

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59582939

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档