言ってやるが、例えば、私のようなものが含まれているObjective-Cのコンパイルされたモジュールを持って、次LLVM C++ APIを介してObjective-Cブロックを呼び出す方法は?
はtypedef bool (^BoolBlock)(void);
BoolBlock returnABlock(void)
{
return Block_copy(^bool(void){
printf("Block executing.\n");
return YES;
});
}
...その後、LLVM C++ APIを使用して、私はそのモジュールをロードし、呼び出しCallInstを作成returnABlock()
機能:
Function *returnABlockFunction = returnABlockModule->getFunction(std::string("returnABlock"));
CallInst *returnABlockCall = CallInst::Create(returnABlockFunction, "returnABlockCall", entryBlock);
どのように私はそのブロックがreturnABlockCall
オブジェクトを介して返さ呼び出すことができますか?
ありがとう、ohmantics。私は時々仲間のソースのその部分を掘り下げます。 – smokris