{-# LANGUAGE Haskell2010 , CPP #-} {-# OPTIONS -Wall #-} -- | This module contains information about the java bridge on your -- system. For the low level interface use "Foreign.Java.JNI.Safe" or -- "Foreign.Java.JNI.Unsafe", for the medium level interface use -- "Foreign.Java". -- -- For creating high level bindings between Haskell and Java use -- "Foreign.Java.Bindings". module Foreign.Java.JNI where data JniFlag = ONLY_CORE -- ^ The java bridge was compiled with only the -- core modules (low level interface). | DEBUG -- ^ The java bridge was compiled with debug -- symbols. | OSX_GUI -- ^ The java bridge was compiled with special -- support for Cocoa on Mac OS X. | OSX_FRAMEWORK -- ^ The java bridge was linked with the Java -- framework on OS X. Otherwise @libjvm@ is -- loaded dynamically. deriving (Show, Eq) jniFlags :: [JniFlag] -- ^ Returns a list of flags which the java bridge was compiled with. jniFlags = #ifdef FFIJNI_ONLY_CORE ONLY_CORE : #endif #ifdef FFIJNI_DEBUG DEBUG : #endif #ifdef FFIJNI_OSX_GUI OSX_GUI : #endif #ifdef FFIJNI_OSX_FRAMEWORK OSX_FRAMEWORK : #endif [] javaBridgeVersion :: String -- ^ The version of the java bridge. javaBridgeVersion = FFIJNI_BRIDGE_VERSION