Sha256: 27d3362c8ca654057ca23f016ebba3e446d922b7eae1a5343367ac5f5e8e19eb

Contents?: true

Size: 783 Bytes

Versions: 2

Compression:

Stored size: 783 Bytes

Contents

/* 
 * File:   Callback.h
 * Author: wayne
 *
 * Created on September 11, 2008, 10:01 AM
 */

#ifndef _CALLBACK_H
#define	_CALLBACK_H

#include "Types.h"

#ifdef	__cplusplus
extern "C" {
#endif
#include <ffi.h>
    
typedef struct {
    NativeType returnType;
    NativeType* parameterTypes;
    ffi_type* ffiReturnType;
    ffi_type** ffiParameterTypes;
    ffi_cif ffi_cif;
    int parameterCount;
    int flags;
    ffi_abi abi;
} CallbackInfo;

typedef struct {
    void* code;
    ffi_closure* ffi_closure;
    ffi_cif ffi_cif;
    int flags;
    CallbackInfo* cbInfo;
    VALUE rbCallbackInfo;
    VALUE rbProc;
} NativeCallback;

extern VALUE rb_FFI_Callback_class;
extern VALUE rb_FFI_NativeCallback_new(VALUE, VALUE);

#ifdef	__cplusplus
}
#endif

#endif	/* _CALLBACK_H */

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
ffi-0.1.0 ext/Callback.h
ffi-0.1.1 ext/Callback.h