有没有办法在Djinni的DSL中继承/扩展接口?
例如:
parent = interface +c {
parentMethod();
}
child1 = interface +c {
childMethod1();
}
child2 = interface +c {
childMethod2();
}
我想从child1
继承child2
和parent
。
答案 0 :(得分:6)
目前Djinni没有接口继承。这不是因为我们反对它(欢迎拉请求!),而仅仅是因为Dropbox的开发并不需要它。您可以通过一些显式方法获得您所需要的东西。例如。在子对象中添加asParentInterface()方法。在C ++层,您可以选择将“this”强制转换为另一种类型,并且您的impl对象将从Djinni基类中继承。在应用程序语言中,您会在同一个底层对象上看到多个不同的代理对象。