gpt4 book ai didi

d - 在 D 中识别具有指定 Id 的方法

转载 作者:行者123 更新时间:2023-12-04 12:10:44 25 4
gpt4 key购买 nike

我希望在编译时识别具有特定模式的特定方法,并在父类中与指定的 id 槽 mixins 一起注册。

前任。:
从具有预定 id:5 的类中获取方法“X”,我想要的是,在父类的 mixin 中,方法 X 将注册为具有其 id 的委托(delegate),以便稍后由其 id 调用。

考虑到我希望 id 是 int 类型并且只注册指定的方法,那么指定 Id 的最佳方法是什么?

我应该(如果可能的话)使用非常类似于@property 但带有参数的自定义注释来做到这一点,例如:

@autoregister(id)
void method(...)

如果可以这样做,那么一个示例或文档链接会很好,因为我没有在文档中找到它。

如果不可能,我将使用函数的签名作为字符串,但我真的想尽可能使用数字标识符而不是可能很长的字符串。

最佳答案

目前无法进行自定义注释(但将来会)。

但是,您可以制定自己的方法命名约定,这将允许您执行与您所描述的类似的事情。我没有时间深入思考如何做到这一点,但我会从有一个方法开始,比如:

public void id30_doSomething(/* params */) {
// body
}
alias id30_doSomething doSomething;

// finally, lets do something with all these methods
// and generate mixin...

在此之后,您可能会列出所有方法并查找它们的名称是否匹配 id([0-9]*)_.* ,如果是这样,那么您生成 mixin 以在父级中注册它们...

关于d - 在 D 中识别具有指定 Id 的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11211606/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com