// JNI function headers for the Go <=> Java bridge.
//   gobind -lang=java ignore
//
// File is generated by gobind. Do not edit.

#ifndef __Ignore_H__
#define __Ignore_H__

#include <jni.h>

extern jclass proxy_class_ignore_I;
extern jmethodID proxy_class_ignore_I_cons;

// skipped method I.Argument with unsupported parameter or return types

// skipped method I.Result with unsupported parameter or return types

extern jclass proxy_class_ignore_S;
extern jmethodID proxy_class_ignore_S_cons;
#endif
