Djinni:我可以将接口定义为在所有环境中都可实现吗?

Djinni: can I define the interfaces as implementable in all the environments?

考虑 Djinni 的 documentation

上面写着:

# This interface will be implemented in C++ and can be called from any language.
my_cpp_interface = interface +c {
    # ...
}

此外,它说:

# This interface will be implemented in Java and ObjC and can be called from C++.
my_client_interface = interface +j +o {
    # ...
}

无论如何,我的情况是我有一个可以在客户端或 C++ 端定义的对象。
因此,我想使用如下语法:

my_interface = interface +j +o +c {
    # ...
}

它是一个有效的语法,djinni 支持的东西(它运行没有错误,但我不知道生成的代码是否也有效)还是我应该重新考虑的东西?

是的,这很好用,并且会为该接口生成必要的代理和编组代码,以任何语言实现。