1734 lines
45 KiB
C++
1734 lines
45 KiB
C++
#ifndef SCRIPT_H
|
|
#define SCRIPT_H
|
|
|
|
#include "../third-party/lua/lua.hpp"
|
|
#include "../third-party/libffi/ffi.h"
|
|
|
|
#ifndef VMP_GNU
|
|
#ifdef _WIN64
|
|
#if NDEBUG
|
|
#pragma comment(lib, "../third-party/libffi/libffi64.lib")
|
|
#else
|
|
#pragma comment(lib, "../third-party/libffi/libffi64d.lib")
|
|
#endif // NDEBUG
|
|
#else
|
|
#if NDEBUG
|
|
#pragma comment(lib, "../third-party/libffi/libffi32.lib")
|
|
#else
|
|
#pragma comment(lib, "../third-party/libffi/libffi32d.lib")
|
|
#endif // NDEBUG
|
|
#endif // _WIN64
|
|
#endif // VMP_GNU
|
|
|
|
class Core;
|
|
|
|
class Script : public IObject
|
|
{
|
|
public:
|
|
Script(Core *owner);
|
|
~Script();
|
|
void clear() { text_.clear(); }
|
|
std::string text() const { return text_; }
|
|
bool need_compile() const { return need_compile_; }
|
|
void set_text(const std::string &text) { text_ = text; }
|
|
void set_need_compile(bool need_compile);
|
|
void DoBeforeCompilation();
|
|
void DoAfterCompilation();
|
|
void DoBeforeSaveFile();
|
|
void DoAfterSaveFile();
|
|
void DoBeforePackFile();
|
|
static Core *core() { return core_; }
|
|
bool Compile();
|
|
bool LoadFromFile(const std::string &file_name);
|
|
private:
|
|
void ExecuteFunction(const std::string &func_name);
|
|
void close();
|
|
void ShowError();
|
|
static Core *core_;
|
|
lua_State *state_;
|
|
std::string text_;
|
|
bool need_compile_;
|
|
};
|
|
|
|
class Uint64Binder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "uint64"; }
|
|
private:
|
|
static int add(lua_State *L);
|
|
static int sub(lua_State *L);
|
|
static int mul(lua_State *L);
|
|
static int div(lua_State *L);
|
|
static int mod(lua_State *L);
|
|
static int pow(lua_State *L);
|
|
static int unm(lua_State *L);
|
|
static int eq(lua_State *L);
|
|
static int lt(lua_State *L);
|
|
static int le(lua_State *L);
|
|
static int _new(lua_State *L);
|
|
static int tostring(lua_State *L);
|
|
};
|
|
|
|
class FFILibrary : public IObject
|
|
{
|
|
public:
|
|
FFILibrary(const std::string &name);
|
|
~FFILibrary();
|
|
void close();
|
|
HMODULE value() const { return value_; }
|
|
std::string name() const { return name_; }
|
|
private:
|
|
HMODULE value_;
|
|
std::string name_;
|
|
};
|
|
|
|
class FFIFunction : public IObject
|
|
{
|
|
public:
|
|
FFIFunction(HMODULE module, const std::string &name);
|
|
void *value() const { return value_; }
|
|
std::string name() const { return name_; }
|
|
int ret() const { return ret_; }
|
|
void set_ret(int ret) { ret_ = ret; }
|
|
void set_abi(int abi) { abi_ = abi; }
|
|
void add_param(int param) { params_.push_back(param); }
|
|
ffi_status Prepare();
|
|
void Call(void *ret, void **args);
|
|
std::vector<int> params() const { return params_; }
|
|
private:
|
|
std::string name_;
|
|
void *value_;
|
|
int ret_;
|
|
int abi_;
|
|
std::vector<int> params_;
|
|
ffi_cif cif_;
|
|
ffi_type *ffi_ret_;
|
|
std::vector<ffi_type *> ffi_params_;
|
|
};
|
|
|
|
class FFILibraryBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "FFILibrary"; }
|
|
private:
|
|
static int tostring(lua_State *state);
|
|
static int close(lua_State *state);
|
|
static int gc(lua_State *state);
|
|
static int get_function(lua_State *state);
|
|
static int address(lua_State *state);
|
|
};
|
|
|
|
class FFIFunctionBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "FFIFunction"; }
|
|
private:
|
|
static int tostring(lua_State *state);
|
|
static int gc(lua_State *state);
|
|
static int address(lua_State *state);
|
|
static int call(lua_State *state);
|
|
};
|
|
|
|
class OperandTypeBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *enum_name() { return "OperandType"; }
|
|
};
|
|
|
|
class OperandSizeBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *enum_name() { return "OperandSize"; }
|
|
};
|
|
|
|
class ObjectTypeBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *enum_name() { return "ObjectType"; }
|
|
};
|
|
|
|
class CommandOptionBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *enum_name() { return "CommandOption"; }
|
|
};
|
|
|
|
class FoldersBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "Folders"; }
|
|
private:
|
|
static int count(lua_State *state);
|
|
static int item(lua_State *state);
|
|
static int add(lua_State *state);
|
|
static int clear(lua_State *state);
|
|
};
|
|
|
|
class FolderBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "Folder"; }
|
|
private:
|
|
static int count(lua_State *state);
|
|
static int item(lua_State *state);
|
|
static int add(lua_State *state);
|
|
static int clear(lua_State *state);
|
|
static int name(lua_State *state);
|
|
static int destroy(lua_State *state);
|
|
};
|
|
|
|
class PEFileBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "PEFile"; }
|
|
private:
|
|
static int name(lua_State *state);
|
|
static int format(lua_State *state);
|
|
static int size(lua_State *state);
|
|
static int seek(lua_State *state);
|
|
static int tell(lua_State *state);
|
|
static int write(lua_State *state);
|
|
static int count(lua_State *state);
|
|
static int item(lua_State *state);
|
|
static int flush(lua_State *state);
|
|
static int read(lua_State *state);
|
|
};
|
|
|
|
class PEArchitectureBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "PEArchitecture"; }
|
|
private:
|
|
static int segments(lua_State *state);
|
|
static int sections(lua_State *state);
|
|
static int name(lua_State *state);
|
|
static int file(lua_State *state);
|
|
static int entry_point(lua_State *state);
|
|
static int image_base(lua_State *state);
|
|
static int cpu_address_size(lua_State *state);
|
|
static int dll_characteristics(lua_State *state);
|
|
static int size(lua_State *state);
|
|
static int functions(lua_State *state);
|
|
static int directories(lua_State *state);
|
|
static int imports(lua_State *state);
|
|
static int exports(lua_State *state);
|
|
static int resources(lua_State *state);
|
|
static int fixups(lua_State *state);
|
|
static int map_functions(lua_State *state);
|
|
static int folders(lua_State *state);
|
|
static int address_seek(lua_State *state);
|
|
static int seek(lua_State *state);
|
|
static int tell(lua_State *state);
|
|
static int write(lua_State *state);
|
|
static int read(lua_State *state);
|
|
};
|
|
|
|
class PESegmentsBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "PESegments"; }
|
|
private:
|
|
static int item(lua_State *state);
|
|
static int count(lua_State *state);
|
|
static int GetItemByAddress(lua_State *state);
|
|
static int GetItemByName(lua_State *state);
|
|
};
|
|
|
|
class PESegmentBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "PESegment"; }
|
|
private:
|
|
static int size(lua_State *state);
|
|
static int address(lua_State *state);
|
|
static int name(lua_State *state);
|
|
static int set_name(lua_State *state);
|
|
static int physical_offset(lua_State *state);
|
|
static int physical_size(lua_State *state);
|
|
static int flags(lua_State *state);
|
|
static int excluded_from_packing(lua_State *state);
|
|
static int destroy(lua_State *state);
|
|
};
|
|
|
|
class PESectionsBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "PESections"; }
|
|
private:
|
|
static int item(lua_State *state);
|
|
static int count(lua_State *state);
|
|
static int GetItemByAddress(lua_State *state);
|
|
};
|
|
|
|
class PESectionBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "PESection"; }
|
|
private:
|
|
static int size(lua_State *state);
|
|
static int address(lua_State *state);
|
|
static int name(lua_State *state);
|
|
static int offset(lua_State *state);
|
|
static int segment(lua_State *state);
|
|
};
|
|
|
|
class PEDirectoriesBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "PEDirectories"; }
|
|
private:
|
|
static int item(lua_State *state);
|
|
static int count(lua_State *state);
|
|
static int GetItemByType(lua_State *state);
|
|
};
|
|
|
|
class PEDirectoryBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "PEDirectory"; }
|
|
private:
|
|
static int size(lua_State *state);
|
|
static int address(lua_State *state);
|
|
static int name(lua_State *state);
|
|
static int type(lua_State *state);
|
|
static int set_size(lua_State *state);
|
|
static int set_address(lua_State *state);
|
|
static int clear(lua_State *state);
|
|
};
|
|
|
|
class PEFormatBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *enum_name() { return "PE"; }
|
|
};
|
|
|
|
class PEImportsBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "PEImports"; }
|
|
private:
|
|
static int item(lua_State *state);
|
|
static int count(lua_State *state);
|
|
static int GetItemByName(lua_State *state);
|
|
};
|
|
|
|
class PEImportBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "PEImport"; }
|
|
private:
|
|
static int item(lua_State *state);
|
|
static int count(lua_State *state);
|
|
static int name(lua_State *state);
|
|
static int is_sdk(lua_State *state);
|
|
static int set_name(lua_State *state);
|
|
};
|
|
|
|
class PEImportFunctionBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "PEImportFunction"; }
|
|
private:
|
|
static int address(lua_State *state);
|
|
static int name(lua_State *state);
|
|
static int type(lua_State *state);
|
|
};
|
|
|
|
class APITypeBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *enum_name() { return "APIType"; }
|
|
};
|
|
|
|
class PEExportsBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "PEExports"; }
|
|
private:
|
|
static int item(lua_State *state);
|
|
static int count(lua_State *state);
|
|
static int clear(lua_State *state);
|
|
static int Delete(lua_State *state);
|
|
static int name(lua_State *state);
|
|
static int set_name(lua_State *state);
|
|
static int GetItemByAddress(lua_State *state);
|
|
static int GetItemByName(lua_State *state);
|
|
};
|
|
|
|
class PEExportBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "PEExport"; }
|
|
private:
|
|
static int address(lua_State *state);
|
|
static int name(lua_State *state);
|
|
static int set_name(lua_State *state);
|
|
static int ordinal(lua_State *state);
|
|
static int forwarded_name(lua_State *state);
|
|
static int destroy(lua_State *state);
|
|
};
|
|
|
|
class PEResourcesBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "PEResources"; }
|
|
private:
|
|
static int item(lua_State *state);
|
|
static int count(lua_State *state);
|
|
static int clear(lua_State *state);
|
|
static int GetItemByName(lua_State *state);
|
|
static int GetItemByType(lua_State *state);
|
|
};
|
|
|
|
class PEResourceBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "PEResource"; }
|
|
private:
|
|
static int item(lua_State *state);
|
|
static int count(lua_State *state);
|
|
static int clear(lua_State *state);
|
|
static int address(lua_State *state);
|
|
static int size(lua_State *state);
|
|
static int name(lua_State *state);
|
|
static int type(lua_State *state);
|
|
static int is_directory(lua_State *state);
|
|
static int destroy(lua_State *state);
|
|
static int GetItemByName(lua_State *state);
|
|
static int excluded_from_packing(lua_State *state);
|
|
static int set_excluded_from_packing(lua_State *state);
|
|
};
|
|
|
|
class PEFixupsBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "PEFixups"; }
|
|
private:
|
|
static int item(lua_State *state);
|
|
static int count(lua_State *state);
|
|
static int IndexOf(lua_State *state);
|
|
static int GetItemByAddress(lua_State *state);
|
|
};
|
|
|
|
class PEFixupBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "PEFixup"; }
|
|
private:
|
|
static int address(lua_State *state);
|
|
static int set_deleted(lua_State *state);
|
|
};
|
|
|
|
class MacFileBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "MacFile"; }
|
|
private:
|
|
static int name(lua_State *state);
|
|
static int format(lua_State *state);
|
|
static int size(lua_State *state);
|
|
static int seek(lua_State *state);
|
|
static int tell(lua_State *state);
|
|
static int write(lua_State *state);
|
|
static int count(lua_State *state);
|
|
static int item(lua_State *state);
|
|
static int flush(lua_State *state);
|
|
static int read(lua_State *state);
|
|
};
|
|
|
|
class MacArchitectureBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "MacArchitecture"; }
|
|
private:
|
|
static int segments(lua_State *state);
|
|
static int sections(lua_State *state);
|
|
static int name(lua_State *state);
|
|
static int file(lua_State *state);
|
|
static int entry_point(lua_State *state);
|
|
static int image_base(lua_State *state);
|
|
static int cpu_address_size(lua_State *state);
|
|
static int size(lua_State *state);
|
|
static int functions(lua_State *state);
|
|
static int commands(lua_State *state);
|
|
static int symbols(lua_State *state);
|
|
static int imports(lua_State *state);
|
|
static int exports(lua_State *state);
|
|
static int fixups(lua_State *state);
|
|
static int map_functions(lua_State *state);
|
|
static int folders(lua_State *state);
|
|
static int address_seek(lua_State *state);
|
|
static int seek(lua_State *state);
|
|
static int tell(lua_State *state);
|
|
static int write(lua_State *state);
|
|
static int read(lua_State *state);
|
|
};
|
|
|
|
class MacSegmentsBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "MacSegments"; }
|
|
private:
|
|
static int item(lua_State *state);
|
|
static int count(lua_State *state);
|
|
static int GetItemByAddress(lua_State *state);
|
|
};
|
|
|
|
class MacSegmentBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "MacSegment"; }
|
|
private:
|
|
static int size(lua_State *state);
|
|
static int address(lua_State *state);
|
|
static int name(lua_State *state);
|
|
static int physical_offset(lua_State *state);
|
|
static int physical_size(lua_State *state);
|
|
static int flags(lua_State *state);
|
|
static int excluded_from_packing(lua_State *state);
|
|
};
|
|
|
|
class MacSectionsBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "MacSections"; }
|
|
private:
|
|
static int item(lua_State *state);
|
|
static int count(lua_State *state);
|
|
static int GetItemByAddress(lua_State *state);
|
|
};
|
|
|
|
class MacSectionBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "MacSection"; }
|
|
private:
|
|
static int size(lua_State *state);
|
|
static int address(lua_State *state);
|
|
static int name(lua_State *state);
|
|
static int offset(lua_State *state);
|
|
static int segment(lua_State *state);
|
|
static int destroy(lua_State *state);
|
|
};
|
|
|
|
class MacCommandsBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "MacCommands"; }
|
|
private:
|
|
static int item(lua_State *state);
|
|
static int count(lua_State *state);
|
|
static int GetItemByType(lua_State *state);
|
|
};
|
|
|
|
class MacCommandBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "MacCommand"; }
|
|
private:
|
|
static int size(lua_State *state);
|
|
static int address(lua_State *state);
|
|
static int name(lua_State *state);
|
|
static int type(lua_State *state);
|
|
};
|
|
|
|
class MacFormatBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *enum_name() { return "MachO"; }
|
|
};
|
|
|
|
class MacSymbolsBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "MacSymbols"; }
|
|
private:
|
|
static int item(lua_State *state);
|
|
static int count(lua_State *state);
|
|
};
|
|
|
|
class MacSymbolBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "MacSymbol"; }
|
|
private:
|
|
static int value(lua_State *state);
|
|
static int name(lua_State *state);
|
|
static int sect(lua_State *state);
|
|
static int desc(lua_State *state);
|
|
};
|
|
|
|
class MacImportsBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "MacImports"; }
|
|
private:
|
|
static int item(lua_State *state);
|
|
static int count(lua_State *state);
|
|
static int GetItemByName(lua_State *state);
|
|
};
|
|
|
|
class MacImportBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "MacImport"; }
|
|
private:
|
|
static int item(lua_State *state);
|
|
static int count(lua_State *state);
|
|
static int name(lua_State *state);
|
|
static int is_sdk(lua_State *state);
|
|
static int set_name(lua_State *state);
|
|
};
|
|
|
|
class MacImportFunctionBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "MacImportFunction"; }
|
|
private:
|
|
static int address(lua_State *state);
|
|
static int name(lua_State *state);
|
|
static int type(lua_State *state);
|
|
};
|
|
|
|
class MacFixupsBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "MacFixups"; }
|
|
private:
|
|
static int item(lua_State *state);
|
|
static int count(lua_State *state);
|
|
static int IndexOf(lua_State *state);
|
|
static int GetItemByAddress(lua_State *state);
|
|
};
|
|
|
|
class MacFixupBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "MacFixup"; }
|
|
private:
|
|
static int address(lua_State *state);
|
|
static int set_deleted(lua_State *state);
|
|
};
|
|
|
|
class MacExportsBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "MacExports"; }
|
|
private:
|
|
static int item(lua_State *state);
|
|
static int count(lua_State *state);
|
|
static int clear(lua_State *state);
|
|
static int Delete(lua_State *state);
|
|
static int name(lua_State *state);
|
|
static int set_name(lua_State *state);
|
|
static int GetItemByAddress(lua_State *state);
|
|
static int GetItemByName(lua_State *state);
|
|
};
|
|
|
|
class MacExportBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "MacExport"; }
|
|
private:
|
|
static int address(lua_State *state);
|
|
static int name(lua_State *state);
|
|
static int forwarded_name(lua_State *state);
|
|
static int destroy(lua_State *state);
|
|
};
|
|
|
|
class ELFFileBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "ELFFile"; }
|
|
private:
|
|
static int name(lua_State *state);
|
|
static int format(lua_State *state);
|
|
static int size(lua_State *state);
|
|
static int seek(lua_State *state);
|
|
static int tell(lua_State *state);
|
|
static int write(lua_State *state);
|
|
static int count(lua_State *state);
|
|
static int item(lua_State *state);
|
|
static int flush(lua_State *state);
|
|
static int read(lua_State *state);
|
|
};
|
|
|
|
class ELFArchitectureBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "ELFArchitecture"; }
|
|
private:
|
|
static int segments(lua_State *state);
|
|
static int sections(lua_State *state);
|
|
static int name(lua_State *state);
|
|
static int file(lua_State *state);
|
|
static int entry_point(lua_State *state);
|
|
static int image_base(lua_State *state);
|
|
static int cpu_address_size(lua_State *state);
|
|
static int size(lua_State *state);
|
|
static int functions(lua_State *state);
|
|
static int directories(lua_State *state);
|
|
static int imports(lua_State *state);
|
|
static int exports(lua_State *state);
|
|
static int fixups(lua_State *state);
|
|
static int map_functions(lua_State *state);
|
|
static int folders(lua_State *state);
|
|
static int address_seek(lua_State *state);
|
|
static int seek(lua_State *state);
|
|
static int tell(lua_State *state);
|
|
static int write(lua_State *state);
|
|
static int read(lua_State *state);
|
|
};
|
|
|
|
class ELFFormatBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *enum_name() { return "ELF"; }
|
|
};
|
|
|
|
class ELFSegmentsBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "ELFSegments"; }
|
|
private:
|
|
static int item(lua_State *state);
|
|
static int count(lua_State *state);
|
|
static int GetItemByAddress(lua_State *state);
|
|
};
|
|
|
|
class ELFSegmentBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "ELFSegment"; }
|
|
private:
|
|
static int size(lua_State *state);
|
|
static int address(lua_State *state);
|
|
static int name(lua_State *state);
|
|
static int physical_offset(lua_State *state);
|
|
static int physical_size(lua_State *state);
|
|
static int flags(lua_State *state);
|
|
static int excluded_from_packing(lua_State *state);
|
|
};
|
|
|
|
class ELFSectionsBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "ELFSections"; }
|
|
private:
|
|
static int item(lua_State *state);
|
|
static int count(lua_State *state);
|
|
static int GetItemByAddress(lua_State *state);
|
|
};
|
|
|
|
class ELFSectionBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "ELFSection"; }
|
|
private:
|
|
static int size(lua_State *state);
|
|
static int address(lua_State *state);
|
|
static int name(lua_State *state);
|
|
static int offset(lua_State *state);
|
|
static int segment(lua_State *state);
|
|
};
|
|
|
|
class ELFDirectoriesBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "ELFDirectories"; }
|
|
private:
|
|
static int item(lua_State *state);
|
|
static int count(lua_State *state);
|
|
static int GetItemByType(lua_State *state);
|
|
};
|
|
|
|
class ELFDirectoryBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "ELFDirectory"; }
|
|
private:
|
|
static int size(lua_State *state);
|
|
static int address(lua_State *state);
|
|
static int name(lua_State *state);
|
|
static int type(lua_State *state);
|
|
};
|
|
|
|
class ELFImportsBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "ELFImports"; }
|
|
private:
|
|
static int item(lua_State *state);
|
|
static int count(lua_State *state);
|
|
static int GetItemByName(lua_State *state);
|
|
};
|
|
|
|
class ELFImportBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "ELFImport"; }
|
|
private:
|
|
static int item(lua_State *state);
|
|
static int count(lua_State *state);
|
|
static int name(lua_State *state);
|
|
static int is_sdk(lua_State *state);
|
|
};
|
|
|
|
class ELFImportFunctionBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "ELFImportFunction"; }
|
|
private:
|
|
static int address(lua_State *state);
|
|
static int name(lua_State *state);
|
|
static int type(lua_State *state);
|
|
};
|
|
|
|
class ELFExportsBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "ELFExports"; }
|
|
private:
|
|
static int item(lua_State *state);
|
|
static int count(lua_State *state);
|
|
static int clear(lua_State *state);
|
|
static int Delete(lua_State *state);
|
|
static int name(lua_State *state);
|
|
static int GetItemByAddress(lua_State *state);
|
|
static int GetItemByName(lua_State *state);
|
|
};
|
|
|
|
class ELFExportBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "ELFExport"; }
|
|
private:
|
|
static int address(lua_State *state);
|
|
static int name(lua_State *state);
|
|
static int ordinal(lua_State *state);
|
|
static int forwarded_name(lua_State *state);
|
|
static int destroy(lua_State *state);
|
|
};
|
|
|
|
class ELFFixupsBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "ELFFixups"; }
|
|
private:
|
|
static int item(lua_State *state);
|
|
static int count(lua_State *state);
|
|
static int IndexOf(lua_State *state);
|
|
static int GetItemByAddress(lua_State *state);
|
|
};
|
|
|
|
class ELFFixupBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "ELFFixup"; }
|
|
private:
|
|
static int address(lua_State *state);
|
|
static int set_deleted(lua_State *state);
|
|
};
|
|
|
|
class NETArchitectureBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "NETArchitecture"; }
|
|
private:
|
|
static int segments(lua_State *state);
|
|
static int sections(lua_State *state);
|
|
static int name(lua_State *state);
|
|
static int file(lua_State *state);
|
|
static int entry_point(lua_State *state);
|
|
static int image_base(lua_State *state);
|
|
static int cpu_address_size(lua_State *state);
|
|
static int size(lua_State *state);
|
|
static int functions(lua_State *state);
|
|
static int streams(lua_State *state);
|
|
static int imports(lua_State *state);
|
|
static int exports(lua_State *state);
|
|
static int map_functions(lua_State *state);
|
|
static int folders(lua_State *state);
|
|
static int address_seek(lua_State *state);
|
|
static int seek(lua_State *state);
|
|
static int tell(lua_State *state);
|
|
static int write(lua_State *state);
|
|
static int read(lua_State *state);
|
|
};
|
|
|
|
class NETFormatBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *enum_name() { return "NET"; }
|
|
};
|
|
|
|
class ILStream;
|
|
class ILToken;
|
|
|
|
class NETMetaDataBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "NETMetaData"; }
|
|
private:
|
|
static int item(lua_State *state);
|
|
static int count(lua_State *state);
|
|
static int heap(lua_State *state);
|
|
static void push_stream(lua_State *state, ILStream *stream);
|
|
static int table(lua_State *state);
|
|
};
|
|
|
|
class NETStreamBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "NETStream"; }
|
|
private:
|
|
static int size(lua_State *state);
|
|
static int address(lua_State *state);
|
|
static int name(lua_State *state);
|
|
};
|
|
|
|
class NETHeapBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "NETHeap"; }
|
|
private:
|
|
static int size(lua_State *state);
|
|
static int address(lua_State *state);
|
|
static int name(lua_State *state);
|
|
static int item(lua_State *state);
|
|
static int count(lua_State *state);
|
|
static int GetItemByType(lua_State *state);
|
|
};
|
|
|
|
class TokenTypeBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *enum_name() { return "TokenType"; }
|
|
};
|
|
|
|
class NETTableBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "NETTable"; }
|
|
private:
|
|
static int type(lua_State *state);
|
|
static int item(lua_State *state);
|
|
static int count(lua_State *state);
|
|
};
|
|
|
|
class NETTokenTypeBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *enum_name() { return "TokenType"; }
|
|
};
|
|
|
|
class NETTokenBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "NETToken"; }
|
|
private:
|
|
static int id(lua_State *state);
|
|
static int type(lua_State *state);
|
|
static int value(lua_State *state);
|
|
static int can_rename(lua_State *state);
|
|
static int set_can_rename(lua_State *state);
|
|
};
|
|
|
|
class NETMethodsBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "NETMethods"; }
|
|
private:
|
|
static int item(lua_State *state);
|
|
static int count(lua_State *state);
|
|
};
|
|
|
|
class NETFieldsBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "NETFields"; }
|
|
private:
|
|
static int item(lua_State *state);
|
|
static int count(lua_State *state);
|
|
};
|
|
|
|
class NETTypeDefBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "NETTypeDef"; }
|
|
private:
|
|
static int id(lua_State *state);
|
|
static int type(lua_State *state);
|
|
static int value(lua_State *state);
|
|
static int name_space(lua_State *state);
|
|
static int name(lua_State *state);
|
|
static int full_name(lua_State *state);
|
|
static int flags(lua_State *state);
|
|
static int declaring_type(lua_State *state);
|
|
static int base_type(lua_State *state);
|
|
static int method_list(lua_State *state);
|
|
static int field_list(lua_State *state);
|
|
static int set_namespace(lua_State *state);
|
|
static int set_name(lua_State *state);
|
|
};
|
|
|
|
class NETTypeRefBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "NETTypeRef"; }
|
|
private:
|
|
static int id(lua_State *state);
|
|
static int type(lua_State *state);
|
|
static int value(lua_State *state);
|
|
static int name_space(lua_State *state);
|
|
static int name(lua_State *state);
|
|
static int full_name(lua_State *state);
|
|
static int resolution_scope(lua_State *state);
|
|
};
|
|
|
|
class NETAssemblyRefBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "NETAssemblyRef"; }
|
|
private:
|
|
static int id(lua_State *state);
|
|
static int type(lua_State *state);
|
|
static int value(lua_State *state);
|
|
static int name(lua_State *state);
|
|
static int full_name(lua_State *state);
|
|
};
|
|
|
|
class NETParamsBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "NETParams"; }
|
|
private:
|
|
static int item(lua_State *state);
|
|
static int count(lua_State *state);
|
|
};
|
|
|
|
class NETMethodDefBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "NETMethodDef"; }
|
|
private:
|
|
static int id(lua_State *state);
|
|
static int type(lua_State *state);
|
|
static int value(lua_State *state);
|
|
static int name(lua_State *state);
|
|
static int full_name(lua_State *state);
|
|
static int address(lua_State *state);
|
|
static int flags(lua_State *state);
|
|
static int impl_flags(lua_State *state);
|
|
static int parent(lua_State *state);
|
|
static int param_list(lua_State *state);
|
|
static int set_name(lua_State *state);
|
|
};
|
|
|
|
class NETFieldBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "NETField"; }
|
|
private:
|
|
static int id(lua_State *state);
|
|
static int type(lua_State *state);
|
|
static int value(lua_State *state);
|
|
static int name(lua_State *state);
|
|
static int flags(lua_State *state);
|
|
static int declaring_type(lua_State *state);
|
|
static int set_name(lua_State *state);
|
|
};
|
|
|
|
class NETParamBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "NETParam"; }
|
|
private:
|
|
static int id(lua_State *state);
|
|
static int type(lua_State *state);
|
|
static int value(lua_State *state);
|
|
static int name(lua_State *state);
|
|
static int parent(lua_State *state);
|
|
static int flags(lua_State *state);
|
|
static int set_name(lua_State *state);
|
|
};
|
|
|
|
class NETCustomAttributeBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "NETCustomAttribute"; }
|
|
private:
|
|
static int id(lua_State *state);
|
|
static int type(lua_State *state);
|
|
static int value(lua_State *state);
|
|
static int parent(lua_State *state);
|
|
static int ref_type(lua_State *state);
|
|
};
|
|
|
|
class NETMemberRefBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "NETMemberRef"; }
|
|
private:
|
|
static int id(lua_State *state);
|
|
static int type(lua_State *state);
|
|
static int value(lua_State *state);
|
|
static int declaring_type(lua_State *state);
|
|
static int name(lua_State *state);
|
|
};
|
|
|
|
class NETUserStringBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "NETUserString"; }
|
|
private:
|
|
static int id(lua_State *state);
|
|
static int type(lua_State *state);
|
|
static int value(lua_State *state);
|
|
static int name(lua_State *state);
|
|
};
|
|
|
|
class NETImportBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "NETImport"; }
|
|
private:
|
|
static int item(lua_State *state);
|
|
static int count(lua_State *state);
|
|
static int name(lua_State *state);
|
|
static int is_sdk(lua_State *state);
|
|
};
|
|
|
|
class NETImportFunctionBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "NETImportFunction"; }
|
|
private:
|
|
static int address(lua_State *state);
|
|
static int name(lua_State *state);
|
|
static int type(lua_State *state);
|
|
};
|
|
|
|
class NETImportsBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "NETImports"; }
|
|
private:
|
|
static int item(lua_State *state);
|
|
static int count(lua_State *state);
|
|
};
|
|
|
|
class NETExportsBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "NETExports"; }
|
|
private:
|
|
static int item(lua_State *state);
|
|
static int count(lua_State *state);
|
|
static int clear(lua_State *state);
|
|
static int GetItemByAddress(lua_State *state);
|
|
static int GetItemByName(lua_State *state);
|
|
};
|
|
|
|
class NETExportBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "NETExport"; }
|
|
private:
|
|
static int address(lua_State *state);
|
|
static int name(lua_State *state);
|
|
};
|
|
|
|
class ILFunctionsBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "ILFunctions"; }
|
|
private:
|
|
static int item(lua_State *state);
|
|
static int count(lua_State *state);
|
|
static int clear(lua_State *state);
|
|
static int Delete(lua_State *state);
|
|
static int GetItemByAddress(lua_State *state);
|
|
static int GetItemByName(lua_State *state);
|
|
static int AddByAddress(lua_State *state);
|
|
};
|
|
|
|
class ILFunctionBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "ILFunction"; }
|
|
private:
|
|
static int address(lua_State *state);
|
|
static int name(lua_State *state);
|
|
static int item(lua_State *state);
|
|
static int count(lua_State *state);
|
|
static int type(lua_State *state);
|
|
static int compilation_type(lua_State *state);
|
|
static int set_compilation_type(lua_State *state);
|
|
static int lock_to_key(lua_State *state);
|
|
static int set_lock_to_key(lua_State *state);
|
|
static int need_compile(lua_State *state);
|
|
static int set_need_compile(lua_State *state);
|
|
static int links(lua_State *state);
|
|
static int GetItemByAddress(lua_State *state);
|
|
static int IndexOf(lua_State *state);
|
|
static int destroy(lua_State *state);
|
|
static int info(lua_State *state);
|
|
static int ranges(lua_State *state);
|
|
static int x_proc(lua_State *state);
|
|
static int folder(lua_State *state);
|
|
static int set_folder(lua_State *state);
|
|
};
|
|
|
|
class ILCommandBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "ILCommand"; }
|
|
private:
|
|
static int address(lua_State *state);
|
|
static int type(lua_State *state);
|
|
static int text(lua_State *state);
|
|
static int size(lua_State *state);
|
|
static int dump(lua_State *state);
|
|
static int link(lua_State *state);
|
|
static int operand_value(lua_State *state);
|
|
static int options(lua_State *state);
|
|
static int alignment(lua_State *state);
|
|
static int token_reference(lua_State *state);
|
|
};
|
|
|
|
class ILCommandTypeBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *enum_name() { return "ILCommandType"; }
|
|
};
|
|
|
|
class MapFunctionsBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "MapFunctions"; }
|
|
private:
|
|
static int item(lua_State *state);
|
|
static int count(lua_State *state);
|
|
static int GetItemByAddress(lua_State *state);
|
|
static int GetItemByName(lua_State *state);
|
|
};
|
|
|
|
class MapFunctionBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "MapFunction"; }
|
|
private:
|
|
static int address(lua_State *state);
|
|
static int size(lua_State *state);
|
|
static int name(lua_State *state);
|
|
static int type(lua_State *state);
|
|
static int references(lua_State *state);
|
|
};
|
|
|
|
class ReferencesBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "References"; }
|
|
private:
|
|
static int item(lua_State *state);
|
|
static int count(lua_State *state);
|
|
static int clear(lua_State *state);
|
|
static int Delete(lua_State *state);
|
|
};
|
|
|
|
class ReferenceBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "Reference"; }
|
|
private:
|
|
static int address(lua_State *state);
|
|
static int operand_address(lua_State *state);
|
|
static int tag(lua_State *state);
|
|
};
|
|
|
|
class IntelFunctionsBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "IntelFunctions"; }
|
|
private:
|
|
static int item(lua_State *state);
|
|
static int count(lua_State *state);
|
|
static int clear(lua_State *state);
|
|
static int Delete(lua_State *state);
|
|
static int GetItemByAddress(lua_State *state);
|
|
static int GetItemByName(lua_State *state);
|
|
static int AddByAddress(lua_State *state);
|
|
};
|
|
|
|
class IntelFunctionBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "IntelFunction"; }
|
|
private:
|
|
static int address(lua_State *state);
|
|
static int name(lua_State *state);
|
|
static int item(lua_State *state);
|
|
static int count(lua_State *state);
|
|
static int type(lua_State *state);
|
|
static int compilation_type(lua_State *state);
|
|
static int set_compilation_type(lua_State *state);
|
|
static int lock_to_key(lua_State *state);
|
|
static int set_lock_to_key(lua_State *state);
|
|
static int need_compile(lua_State *state);
|
|
static int set_need_compile(lua_State *state);
|
|
static int links(lua_State *state);
|
|
static int GetItemByAddress(lua_State *state);
|
|
static int IndexOf(lua_State *state);
|
|
static int destroy(lua_State *state);
|
|
static int info(lua_State *state);
|
|
static int ranges(lua_State *state);
|
|
static int x_proc(lua_State *state);
|
|
static int folder(lua_State *state);
|
|
static int set_folder(lua_State *state);
|
|
};
|
|
|
|
class CompilationTypeBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *enum_name() { return "CompilationType"; }
|
|
};
|
|
|
|
class CommandLinksBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "CommandLinks"; }
|
|
private:
|
|
static int item(lua_State *state);
|
|
static int count(lua_State *state);
|
|
};
|
|
|
|
class AddressRangeBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "AddressRange"; }
|
|
private:
|
|
static int begin(lua_State *state);
|
|
static int end(lua_State *state);
|
|
static int begin_entry(lua_State *state);
|
|
static int end_entry(lua_State *state);
|
|
static int size_entry(lua_State *state);
|
|
};
|
|
|
|
class UnwindOpcodesBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "UnwindOpcodes"; }
|
|
private:
|
|
static int count(lua_State *state);
|
|
static int item(lua_State *state);
|
|
};
|
|
|
|
class FunctionInfoBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "FunctionInfo"; }
|
|
private:
|
|
static int item(lua_State *state);
|
|
static int count(lua_State *state);
|
|
static int begin(lua_State *state);
|
|
static int end(lua_State *state);
|
|
static int base_type(lua_State *state);
|
|
static int base_value(lua_State *state);
|
|
static int prolog_size(lua_State *state);
|
|
static int frame_registr(lua_State *state);
|
|
static int entry(lua_State *state);
|
|
static int unwind_opcodes(lua_State *state);
|
|
static int data_entry(lua_State *state);
|
|
};
|
|
|
|
class FunctionInfoListBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "FunctionInfoList"; }
|
|
private:
|
|
static int item(lua_State *state);
|
|
static int count(lua_State *state);
|
|
static int IndexOf(lua_State *state);
|
|
};
|
|
|
|
class IntelCommandBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "IntelCommand"; }
|
|
private:
|
|
static int address(lua_State *state);
|
|
static int type(lua_State *state);
|
|
static int text(lua_State *state);
|
|
static int size(lua_State *state);
|
|
static int dump(lua_State *state);
|
|
static int link(lua_State *state);
|
|
static int flags(lua_State *state);
|
|
static int base_segment(lua_State *state);
|
|
static int operand(lua_State *state);
|
|
static int preffix(lua_State *state);
|
|
static int options(lua_State *state);
|
|
static int alignment(lua_State *state);
|
|
static int set_dump(lua_State *state);
|
|
};
|
|
|
|
class IntelOperandBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "IntelOperand"; }
|
|
private:
|
|
static int type(lua_State *state);
|
|
static int size(lua_State *state);
|
|
static int registr(lua_State *state);
|
|
static int base_registr(lua_State *state);
|
|
static int scale(lua_State *state);
|
|
static int value(lua_State *state);
|
|
static int address_size(lua_State *state);
|
|
static int value_size(lua_State *state);
|
|
static int fixup(lua_State *state);
|
|
static int is_large_value(lua_State *state);
|
|
};
|
|
|
|
class IntelCommandTypeBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *enum_name() { return "IntelCommandType"; }
|
|
};
|
|
|
|
class IntelSegmentBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *enum_name() { return "IntelSegment"; }
|
|
};
|
|
|
|
class IntelFlagBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *enum_name() { return "IntelFlag"; }
|
|
};
|
|
|
|
class IntelRegistrBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *enum_name() { return "IntelRegistr"; }
|
|
};
|
|
|
|
class CommandLinkBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "CommandLink"; }
|
|
private:
|
|
static int to_address(lua_State *state);
|
|
static int type(lua_State *state);
|
|
static int from(lua_State *state);
|
|
static int parent(lua_State *state);
|
|
static int operand(lua_State *state);
|
|
static int sub_value(lua_State *state);
|
|
static int base_function_info(lua_State *state);
|
|
};
|
|
|
|
class LinkTypeBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *enum_name() { return "LinkType"; }
|
|
};
|
|
|
|
class CoreBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "Core"; }
|
|
private:
|
|
static int extract_file_path(lua_State *state);
|
|
static int extract_file_name(lua_State *state);
|
|
static int extract_file_ext(lua_State *state);
|
|
static int expand_environment_variables(lua_State *state);
|
|
static int set_environment_variable(lua_State *state);
|
|
static int command_line(lua_State *state);
|
|
|
|
static int input_file(lua_State *state);
|
|
static int input_file_name(lua_State *state);
|
|
static int output_file(lua_State *state);
|
|
static int output_file_name(lua_State *state);
|
|
static int set_output_file_name(lua_State *state);
|
|
static int project_file_name(lua_State *state);
|
|
static int instance(lua_State* state);
|
|
static int watermarks(lua_State *state);
|
|
static int watermark_name(lua_State *state);
|
|
static int set_watermark_name(lua_State *state);
|
|
static int options(lua_State *state);
|
|
static int set_options(lua_State *state);
|
|
static int vm_section_name(lua_State *state);
|
|
static int set_vm_section_name(lua_State *state);
|
|
static int save_project(lua_State *state);
|
|
static int input_architecture(lua_State *state);
|
|
static int output_architecture(lua_State *state);
|
|
#ifdef ULTIMATE
|
|
static int licenses(lua_State *state);
|
|
static int files(lua_State *state);
|
|
#endif
|
|
};
|
|
|
|
class ProjectOptionBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *enum_name() { return "ProjectOption"; }
|
|
};
|
|
|
|
#ifdef ULTIMATE
|
|
|
|
class LicensesBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "Licenses"; }
|
|
private:
|
|
static int item(lua_State *state);
|
|
static int count(lua_State *state);
|
|
static int clear(lua_State *state);
|
|
static int Delete(lua_State *state);
|
|
static int public_exp(lua_State *state);
|
|
static int private_exp(lua_State *state);
|
|
static int modulus(lua_State *state);
|
|
static int key_length(lua_State *state);
|
|
static int hash(lua_State *state);
|
|
static int GetLicenseBySerialNumber(lua_State *state);
|
|
static int import_license(lua_State *state);
|
|
};
|
|
|
|
class LicenseInfoBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "LicenseInfo"; }
|
|
private:
|
|
static int flags(lua_State *state);
|
|
static int customer_name(lua_State *state);
|
|
static int customer_email(lua_State *state);
|
|
static int expire_date(lua_State *state);
|
|
static int hwid(lua_State *state);
|
|
static int running_time_limit(lua_State *state);
|
|
static int max_build_date(lua_State *state);
|
|
static int user_data(lua_State *state);
|
|
};
|
|
|
|
class LicenseBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "License"; }
|
|
private:
|
|
static int date(lua_State *state);
|
|
static int customer_name(lua_State *state);
|
|
static int customer_email(lua_State *state);
|
|
static int order_ref(lua_State *state);
|
|
static int comments(lua_State *state);
|
|
static int serial_number(lua_State *state);
|
|
static int blocked(lua_State *state);
|
|
static int set_blocked(lua_State *state);
|
|
static int info(lua_State *state);
|
|
};
|
|
|
|
class FileFoldersBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "FileFolders"; }
|
|
private:
|
|
static int count(lua_State *state);
|
|
static int item(lua_State *state);
|
|
static int add(lua_State *state);
|
|
static int clear(lua_State *state);
|
|
};
|
|
|
|
class FileFolderBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "FileFolder"; }
|
|
private:
|
|
static int count(lua_State *state);
|
|
static int item(lua_State *state);
|
|
static int add(lua_State *state);
|
|
static int clear(lua_State *state);
|
|
static int name(lua_State *state);
|
|
static int destroy(lua_State *state);
|
|
};
|
|
|
|
class FilesBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "Files"; }
|
|
private:
|
|
static int item(lua_State *state);
|
|
static int count(lua_State *state);
|
|
static int clear(lua_State *state);
|
|
static int folders(lua_State *state);
|
|
static int Delete(lua_State *state);
|
|
};
|
|
|
|
class FileActionTypeBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *enum_name() { return "FileActionType"; }
|
|
};
|
|
|
|
class FileBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "File"; }
|
|
private:
|
|
static int name(lua_State *state);
|
|
static int file_name(lua_State *state);
|
|
static int action(lua_State *state);
|
|
static int folder(lua_State *state);
|
|
static int set_name(lua_State *state);
|
|
static int set_file_name(lua_State *state);
|
|
static int set_action(lua_State *state);
|
|
};
|
|
|
|
#endif
|
|
|
|
class WatermarksBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "Watermarks"; }
|
|
private:
|
|
static int item(lua_State *state);
|
|
static int count(lua_State *state);
|
|
static int clear(lua_State *state);
|
|
static int Delete(lua_State *state);
|
|
static int GetItemByName(lua_State *state);
|
|
static int add(lua_State *state);
|
|
};
|
|
|
|
class WatermarkBinder
|
|
{
|
|
public:
|
|
static void Register(lua_State *state);
|
|
static const char *class_name() { return "Watermark"; }
|
|
private:
|
|
static int name(lua_State *state);
|
|
static int value(lua_State *state);
|
|
static int blocked(lua_State *state);
|
|
static int set_blocked(lua_State *state);
|
|
};
|
|
|
|
#endif |