#![deny(clippy::all)]
mod bindings;
mod server_interface;
mod shared_lib;
mod so_cclient_impl;
mod ffi;
mod signatures;
use libc::{c_char, c_long};
pub use bindings::{
SoCClientName, SoMemoryInterface,
SoObjectInterface, SoServerInterface, SoHServer, SoHObject
};
pub use aes_types::{
TaggedData, TaggedDataUnion, JsScript, LiveObject,
Error, Result, ES_ERR_OK
};
pub use server_interface::*;
pub use shared_lib::*;
pub use shared_lib::get_server_interface;
pub use mschema::{ext_ver, ext_init, ext_term, ext_export};
pub mod internal {
pub use crate::signatures::{add_signature, get_signatures};
}
pub type ESGetVersion = extern "C" fn () -> c_long;
pub type ESInitialize = extern "C" fn (argv: *mut TaggedData, _argc: c_long) -> *mut c_char;
pub type ESTerminate = extern "C" fn ();