// Code generated by gobind. DO NOT EDIT.

// JNI function headers for the Go <=> Java bridge.
//
//   autogenerated by gobind -lang=java aliases

#ifndef __Aliases_H__
#define __Aliases_H__

#include <jni.h>

extern jclass proxy_class_aliases_S;
extern jmethodID proxy_class_aliases_S_cons;
#endif
