-/* Cycript - Optimizing JavaScript Compiler/Runtime
- * Copyright (C) 2009-2014 Jay Freeman (saurik)
+/* Cycript - The Truly Universal Scripting Language
+ * Copyright (C) 2009-2016 Jay Freeman (saurik)
*/
/* GNU Affero General Public License, Version 3 {{{ */
#ifndef SIG_FFI_TYPE_H
#define SIG_FFI_TYPE_H
-#ifdef HAVE_FFI_FFI_H
-#include <ffi/ffi.h>
-#else
-#include <ffi.h>
-#endif
-
#include "Pooling.hpp"
#include "sig/types.hpp"
namespace sig {
-ffi_type *ObjectiveC(CYPool &pool, struct Type *type);
-ffi_type *Java(CYPool &pool, struct Type *type);
-
-void sig_ffi_cif(
- CYPool &pool,
- ffi_type *(*sig_ffi_type)(CYPool &, struct Type *),
- struct Signature *signature,
- ffi_cif *cif,
- size_t skip = 0,
- ffi_type **types = NULL,
- size_t offset = 0
-);
+void sig_ffi_cif(CYPool &pool, size_t variadic, const Signature &signature, ffi_cif *cif);
void Copy(CYPool &pool, ffi_type &lhs, ffi_type &rhs);