Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- pub mod exception;
- use self::exception::*;
- #[allow(non_camel_case_types)]
- pub type cell = i32;
- #[allow(non_camel_case_types)]
- pub type ucell = u32;
- /*
- ucell
- 16 => type $name = ::std::os::raw::c_ushort,
- 32 => type $name = ::std::os::raw::c_uint,
- 64 => type $name = ::std::os::raw::c_ulong,
- cell
- 16 => type $name = ::std::os::raw::c_short,
- 32 => type $name = ::std::os::raw::c_int,
- 64 => type $name = ::std::os::raw::c_long,
- */
- #[repr(C)]
- #[allow(non_camel_case_types)]
- pub enum AmxData
- {
- USERNUM = 4,
- EXPMAX = 19,
- NAMEMAX = 31,
- MAGIC = 0xF1E0,
- EXEC_MAIN = -1,
- EXEC_CONT = -2,
- }
- #[repr(C)]
- pub struct Amx
- {
- pub base: *mut u8,
- pub data: *mut u8,
- pub callback: AmxCallback_fn,
- pub dbg: AmxDebug_fn,
- pub cip: cell,
- pub frm: cell,
- pub hea: cell,
- pub hlw: cell,
- pub stk: cell,
- pub stp: cell,
- pub flags: i32,
- pub usertags: [i32; AmxData::USERNUM as usize],
- pub userdata: [*mut ::std::os::raw::c_void; AmxData::USERNUM as usize],
- pub error: i32,
- pub paramcount: i32,
- pub pri: cell,
- pub alt: cell,
- pub reset_stk: cell,
- pub reset_hea: cell,
- pub sysreq_d: cell,
- }
- #[repr(C)]
- pub struct AmxNativeInfo
- {
- pub name: *const ::std::os::raw::c_char, //WORK???
- pub func: AmxNative_fn,
- }
- #[repr(C)]
- pub struct AmxMemInfo
- {
- pub codesize: i32,
- pub datasize: i32,
- pub stackheap: i32,
- }
- #[repr(C)]
- pub struct AmxFuncStub
- {
- pub address: ucell,
- pub name: [::std::os::raw::c_char; AmxData::EXPMAX as usize + 0x1],
- }
- #[repr(C)]
- pub struct AmxFuncStubNT
- {
- pub address: ucell,
- pub nameofs: i32,
- }
- #[repr(C)]
- pub struct AmxHeader
- {
- pub size: i32,
- pub magic: u16,
- pub file_version: ::std::os::raw::c_char,
- pub amx_version: ::std::os::raw::c_char,
- pub flags: i16,
- pub defsize: i16,
- pub cod: i32,
- pub dat: i32,
- pub hea: i32,
- pub stp: i32,
- pub cip: i32,
- pub publics: i32,
- pub natives: i32,
- pub libraries: i32,
- pub pubvars: i32,
- pub tags: i32,
- pub nametable: i32,
- }
- #[repr(C)]
- pub struct AmxTagInfo
- {
- pub name: &'static str,
- pub id: cell,
- }
- #[repr(C)]
- pub enum AmxFlags
- {
- DEBUG = 0x02,
- COMPACT = 0x04,
- BYTEOPC = 0x08,
- NOCHECKS = 0x10,
- NTVREG = 0x1000,
- JITC = 0x2000,
- BROWSE = 0x4000,
- RELOC = 8000
- }
- #[allow(non_camel_case_types)]
- pub type AmxAlign16_fn = extern "C" fn(*mut u16) -> *mut u16;
- #[allow(non_camel_case_types)]
- pub type AmxAlign32_fn = extern "C" fn(*mut u32) -> *mut u32;
- #[allow(non_camel_case_types)]
- pub type AmxAlign64_fn = extern "C" fn(*mut u64) -> *mut u64;
- #[allow(non_camel_case_types)]
- pub type AmxAllot_fn = extern "C" fn(&Amx, i32, *mut cell, *mut *mut cell) -> AmxError;
- #[allow(non_camel_case_types)]
- pub type AmxCallback_fn = extern "C" fn(&Amx, cell, *mut cell, *mut cell) -> AmxError;
- #[allow(non_camel_case_types)]
- pub type AmxDebug_fn = extern "C" fn(&Amx ) -> i32;
- #[allow(non_camel_case_types)]
- pub type AmxNative_fn = extern "C" fn(&Amx, *mut cell) -> cell;
- #[allow(non_camel_case_types)]
- pub type AmxCleanup_fn = extern "C" fn(&Amx) -> AmxError;
- #[allow(non_camel_case_types)]
- pub type AmxClone_fn = extern "C" fn(&Amx, &Amx, *mut ::std::os::raw::c_void) -> AmxError;
- #[allow(non_camel_case_types)]
- pub type AmxExec_fn = extern "C" fn(&Amx, *mut cell, i32) -> AmxError;
- #[allow(non_camel_case_types)]
- pub type AmxFindNative_fn = extern "C" fn(&Amx, *const ::std::os::raw::c_char, *mut i32) -> AmxError;
- #[allow(non_camel_case_types)]
- pub type AmxFindPublic_fn = extern "C" fn(&Amx, *const ::std::os::raw::c_char, *mut i32) -> AmxError;
- #[allow(non_camel_case_types)]
- pub type AmxFindPubVar_fn = extern "C" fn(&Amx, *const ::std::os::raw::c_char, *mut i32) -> AmxError;
- #[allow(non_camel_case_types)]
- pub type AmxFindTagId_fn = extern "C" fn(&Amx, cell, *const char) -> AmxError; //char* that *const char??
- #[allow(non_camel_case_types)]
- pub type AmxFlags_fn = extern "C" fn(&Amx, cell, *mut AmxFlags) -> AmxError;
- #[allow(non_camel_case_types)]
- pub type AmxGetAddr_fn = extern "C" fn(&Amx, cell, *mut *mut cell) -> AmxError;
- #[allow(non_camel_case_types)]
- pub type AmxGetNative_fn = extern "C" fn(&Amx, i32, *const char) -> AmxError; //char* that *const char??
- #[allow(non_camel_case_types)]
- pub type AmxGetPublic_fn = extern "C" fn(&Amx, i32, *const char) -> AmxError; //char* that *const char??
- #[allow(non_camel_case_types)]
- pub type AmxGetPubVar_fn = extern "C" fn(&Amx, i32, *const char, *mut cell) -> AmxError; //char* that *const char??
- #[allow(non_camel_case_types)]
- pub type AmxGetString_fn = extern "C" fn(*const char, *const cell, i32, usize) -> AmxError; //char* that *const char?? const cell* need *const or *mut???
- #[allow(non_camel_case_types)]
- pub type AmxGetTag_fn = extern "C" fn(&Amx, i32, *const char, *mut cell) -> AmxError; //char* that *const char??
- #[allow(non_camel_case_types)]
- pub type AmxGetUserData_fn = extern "C" fn(&Amx, i32, *mut *mut ::std::os::raw::c_void) -> AmxError; //void** that *mut *mut?
- #[allow(non_camel_case_types)]
- pub type AmxInit_fn = extern "C" fn(&Amx, *mut ::std::os::raw::c_void) -> AmxError; //void* that *mut?
- #[allow(non_camel_case_types)]
- pub type AmxInitJIT_fn = extern "C" fn(&Amx, *mut ::std::os::raw::c_void, *mut ::std::os::raw::c_void) -> AmxError; //void* that *mut?
- #[allow(non_camel_case_types)]
- pub type AmxMemInfo_fn = extern "C" fn(&Amx, *mut i32, *mut i32, *mut i32) -> AmxError;
- #[allow(non_camel_case_types)]
- pub type AmxNameLength_fn = extern "C" fn(&Amx, *mut i32) -> AmxError;
- #[allow(non_camel_case_types)]
- pub type AmxNativeInfo_fn = extern "C" fn(*const ::std::os::raw::c_char, AmxNative_fn) -> AmxError;
- #[allow(non_camel_case_types)]
- pub type AmxNumNatives_fn = extern "C" fn(&Amx, *mut i32) -> AmxError;
- #[allow(non_camel_case_types)]
- pub type AmxNumPublics_fn = extern "C" fn(&Amx, *mut i32) -> AmxError;
- #[allow(non_camel_case_types)]
- pub type AmxNumPubVars_fn = extern "C" fn(&Amx, *mut i32) -> AmxError;
- #[allow(non_camel_case_types)]
- pub type AmxNumTags_fn = extern "C" fn(&Amx, *mut i32) -> AmxError;
- #[allow(non_camel_case_types)]
- pub type AmxPush_fn = extern "C" fn(&Amx, cell) -> AmxError;
- #[allow(non_camel_case_types)]
- pub type AmxPushArray_fn = extern "C" fn(&Amx, *mut cell, *mut *mut cell, *const cell, i32) -> AmxError;
- #[allow(non_camel_case_types)]
- pub type AmxPushString_fn = extern "C" fn(&Amx, *mut cell, *mut *mut cell, *const ::std::os::raw::c_char, i32, i32) -> AmxError;
- #[allow(non_camel_case_types)]
- pub type AmxRaiseError_fn = extern "C" fn(&Amx, i32) -> AmxError;
- #[allow(non_camel_case_types)]
- pub type AmxRegister_fn = extern "C" fn(&Amx, *const AmxNativeInfo, i32) -> AmxError;
- #[allow(non_camel_case_types)]
- pub type AmxRelease_fn = extern "C" fn(&Amx, cell) -> AmxError;
- #[allow(non_camel_case_types)]
- pub type AmxSetCallback_fn = extern "C" fn(&Amx, AmxCallback_fn) -> AmxError;
- #[allow(non_camel_case_types)]
- pub type AmxSetDebugHook_fn = extern "C" fn(&Amx, AmxDebug_fn) -> AmxError;
- #[allow(non_camel_case_types)]
- pub type AmxSetString_fn = extern "C" fn(*mut cell, *const ::std::os::raw::c_char, i32, i32, usize) -> AmxError;
- #[allow(non_camel_case_types)]
- pub type AmxSetUserData_fn = extern "C" fn(&Amx, i32, *mut ::std::os::raw::c_void) -> AmxError;
- #[allow(non_camel_case_types)]
- pub type AmxStrLen_fn = extern "C" fn(*const cell, *mut i32) -> AmxError;
- #[allow(non_camel_case_types)]
- pub type AmxUTF8Check_fn = extern "C" fn(*const ::std::os::raw::c_char, *mut i32) -> AmxError;
- #[allow(non_camel_case_types)]
- pub type AmxUTF8Get_fn = extern "C" fn(*const ::std::os::raw::c_char, *const *const ::std::os::raw::c_char, *mut cell) -> AmxError; //char** that *const *const char?
- #[allow(non_camel_case_types)]
- pub type AmxUTF8Len_fn = extern "C" fn(*const cell, *mut i32) -> AmxError;
- #[allow(non_camel_case_types)]
- pub type AmxUTF8Put_fn = extern "C" fn(*const ::std::os::raw::c_char, *const *const ::std::os::raw::c_char, i32, cell) -> AmxError; //char* that *const char? char** that *const *const char?
- #[repr(C)]
- #[allow(dead_code, non_snake_case)]
- pub struct AmxFunctions
- {
- pub Align16: AmxAlign16_fn,
- pub Align32: AmxAlign32_fn,
- pub Align64: AmxAlign64_fn,
- pub Allot: AmxAllot_fn,
- pub Callback: AmxCallback_fn,
- pub Cleanup: AmxCleanup_fn,
- pub Clone: AmxClone_fn,
- pub Exec: AmxExec_fn,
- pub FindNative: AmxFindNative_fn,
- pub FindPublic: AmxFindPublic_fn,
- pub FindPubVar: AmxFindPubVar_fn,
- pub FindTagId: AmxFindTagId_fn,
- pub Flags: AmxFlags_fn,
- pub GetAddr: AmxGetAddr_fn,
- pub GetNative: AmxGetNative_fn,
- pub GetPublic: AmxGetPublic_fn,
- pub GetPubVar: AmxGetPubVar_fn,
- pub GetString: AmxGetString_fn,
- pub GetTag: AmxGetTag_fn,
- pub GetUserData: AmxGetUserData_fn,
- pub Init: AmxInit_fn,
- pub InitJIT: AmxInitJIT_fn,
- pub MemInfo: AmxMemInfo_fn,
- pub NameLength: AmxNameLength_fn,
- pub NativeInfo: AmxNativeInfo_fn,
- pub NumNatives: AmxNumNatives_fn,
- pub NumPublics: AmxNumPublics_fn,
- pub NumPubVars: AmxNumPubVars_fn,
- pub NumTags: AmxNumTags_fn,
- pub Push: AmxPush_fn,
- pub PushArray: AmxPushArray_fn,
- pub PushString: AmxPushString_fn,
- pub RaiseError: AmxRaiseError_fn,
- pub Register: AmxRegister_fn,
- pub Release: AmxRelease_fn,
- pub SetCallback: AmxSetCallback_fn,
- pub SetDebugHook: AmxSetDebugHook_fn,
- pub SetString: AmxSetString_fn,
- pub SetUserData: AmxSetUserData_fn,
- pub StrLen: AmxStrLen_fn,
- pub UTF8Check: AmxUTF8Check_fn,
- pub UTF8Get: AmxUTF8Get_fn,
- pub UTF8Len: AmxUTF8Len_fn,
- pub UTF8Put: AmxUTF8Put_fn,
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement