int Jim_execInit(Jim_Interp *interp) { if (Jim_PackageProvide(interp, "exec", "1.0", JIM_ERRMSG)) return JIM_ERR; Jim_CreateCommand(interp, "exec", Jim_ExecCmd, JimAllocWaitInfoTable(), JimFreeWaitInfoTable); return JIM_OK; }
int Jim_win32Init(Jim_Interp *interp) { if (Jim_PackageProvide(interp, "win32", "1.0", JIM_ERRMSG)) return JIM_ERR; #define CMD(name) \ Jim_CreateCommand(interp, "win32." #name , Win32_ ## name , NULL, NULL) CMD(ShellExecute); CMD(FindWindow); CMD(CloseWindow); CMD(GetActiveWindow); CMD(SetActiveWindow); CMD(SetForegroundWindow); CMD(Beep); CMD(GetComputerName); CMD(SetComputerName); CMD(GetUserName); CMD(GetModuleFileName); CMD(GetVersion); CMD(GetTickCount); CMD(GetSystemTime); #if !defined(__MINGW32__) && !defined(__CYGWIN__) CMD(GetPerformanceInfo); #endif CMD(GetModuleHandle); CMD(LoadLibrary); CMD(FreeLibrary); CMD(MessageBox); return JIM_OK; }
int Jim_execInit(Jim_Interp *interp) { if (Jim_PackageProvide(interp, "exec", "1.0", JIM_ERRMSG)) return JIM_ERR; Jim_CreateCommand(interp, "exec", Jim_ExecCmd, NULL, NULL); return JIM_OK; }
/* This extension is not dynamically loaded, instead it's linked statically, which is why we shouldn't use the unspecific 'Jim_OnLoad' name */ int Jim_EventLoopOnLoad(Jim_Interp *interp) { Jim_EventLoop *eventLoop; Jim_InitExtension(interp); if (Jim_PackageProvide(interp, "eventloop", "1.0", JIM_ERRMSG) != JIM_OK) return JIM_ERR; eventLoop = Jim_Alloc(sizeof(*eventLoop)); eventLoop->fileEventHead = NULL; eventLoop->timeEventHead = NULL; eventLoop->timeEventNextId = 1; Jim_SetAssocData(interp, "eventloop", JimELAssocDataDeleProc, eventLoop); Jim_CreateCommand(interp, "vwait", JimELVwaitCommand, NULL, NULL); Jim_CreateCommand(interp, "after", JimELAfterCommand, NULL, NULL); /* Export events API */ Jim_RegisterApi(interp, "Jim_CreateFileHandler", Jim_CreateFileHandler); Jim_RegisterApi(interp, "Jim_DeleteFileHandler", Jim_DeleteFileHandler); Jim_RegisterApi(interp, "Jim_CreateTimeHandler", Jim_CreateTimeHandler); Jim_RegisterApi(interp, "Jim_DeleteTimeHandler", Jim_DeleteTimeHandler); Jim_RegisterApi(interp, "Jim_ProcessEvents", Jim_ProcessEvents); return JIM_OK; }
int Jim_arrayInit(Jim_Interp *interp) { if (Jim_PackageProvide(interp, "array", "1.0", JIM_ERRMSG)) return JIM_ERR; Jim_CreateCommand(interp, "array", Jim_SubCmdProc, (void *)array_command_table, NULL); return JIM_OK; }
int Jim_sqlite3Init(Jim_Interp *interp) { if (Jim_PackageProvide(interp, "sqlite3", "1.0", JIM_ERRMSG)) return JIM_ERR; Jim_CreateCommand(interp, "sqlite3.open", JimSqliteOpenCommand, NULL, NULL); return JIM_OK; }
int Jim_readdirInit(Jim_Interp *interp) { if (Jim_PackageProvide(interp, "readdir", "1.0", JIM_ERRMSG)) return JIM_ERR; Jim_CreateCommand(interp, "readdir", Jim_ReaddirCmd, NULL, NULL); return JIM_OK; }
int Jim_OnLoad(Jim_Interp *interp) { Jim_InitExtension(interp); if (Jim_PackageProvide(interp, "readdir", "1.0", JIM_ERRMSG) != JIM_OK) { return JIM_ERR; } Jim_CreateCommand(interp, "readdir", Jim_ReaddirCmd, NULL, NULL); return JIM_OK; }
int Jim_tclprefixInit(Jim_Interp *interp) { if (Jim_PackageProvide(interp, "tclprefix", "1.0", JIM_ERRMSG)) { return JIM_ERR; } Jim_CreateCommand(interp, "tcl::prefix", Jim_TclPrefixCoreCommand, NULL, NULL); return JIM_OK; }
int Jim_readlineInit(Jim_Interp *interp) { if (Jim_PackageProvide(interp, "readline", "1.0", JIM_ERRMSG)) return JIM_ERR; Jim_CreateCommand(interp, "readline.readline", JimRlReadlineCommand, NULL, NULL); Jim_CreateCommand(interp, "readline.addhistory", JimRlAddHistoryCommand, NULL, NULL); return JIM_OK; }
int Jim_namespaceInit(Jim_Interp *interp) { if (Jim_PackageProvide(interp, "namespace", "1.0", JIM_ERRMSG)) return JIM_ERR; Jim_CreateCommand(interp, "namespace", JimNamespaceCmd, NULL, NULL); Jim_CreateCommand(interp, "variable", JimVariableCmd, NULL, NULL); return JIM_OK; }
int Jim_regexpInit(Jim_Interp *interp) { if (Jim_PackageProvide(interp, "regexp", "1.0", JIM_ERRMSG)) return JIM_ERR; Jim_CreateCommand(interp, "regexp", Jim_RegexpCmd, NULL, NULL); Jim_CreateCommand(interp, "regsub", Jim_RegsubCmd, NULL, NULL); return JIM_OK; }
int Jim_interpInit(Jim_Interp *interp) { if (Jim_PackageProvide(interp, "interp", "1.0", JIM_ERRMSG)) return JIM_ERR; Jim_CreateCommand(interp, "interp", JimInterpCommand, NULL, NULL); return JIM_OK; }
int Jim_zlibInit(Jim_Interp *interp) { if (Jim_PackageProvide(interp, "zlib", "1.0", JIM_ERRMSG)) { return JIM_ERR; } Jim_CreateCommand(interp, "zlib", JimZlibCmd, 0, 0); return JIM_OK; }
int Jim_AioInit(Jim_Interp *interp) #endif { #ifndef JIM_STATICEXT Jim_InitExtension(interp); #endif if (Jim_PackageProvide(interp, "aio", "1.0", JIM_ERRMSG) != JIM_OK) return JIM_ERR; Jim_CreateCommand(interp, "aio.open", JimAioOpenCommand, NULL, NULL); return JIM_OK; }
int Jim_historyInit(Jim_Interp *interp) { void **history; if (Jim_PackageProvide(interp, "history", "1.0", JIM_ERRMSG)) return JIM_ERR; history = Jim_Alloc(sizeof(*history)); *history = NULL; Jim_CreateCommand(interp, "history", JimHistorySubCmdProc, history, JimHistoryDelProc); return JIM_OK; }
Jim_AioInit(Jim_Interp *interp) #endif { #ifndef JIM_STATICEXT Jim_InitExtension(interp); // Jim_ImportEventloopAPI(interp); // Johnicholas comments this out #endif if (Jim_PackageProvide(interp, "aio", "1.0", JIM_ERRMSG) != JIM_OK) return JIM_ERR; Jim_CreateCommand(interp, "aio.open", JimAioOpenCommand, NULL, NULL); Jim_CreateCommand(interp, "aio.socket", JimAioSockCommand, NULL, NULL); return JIM_OK; }
int Jim_sdlInit(Jim_Interp *interp) { if (Jim_PackageProvide(interp, "sdl", "1.0", JIM_ERRMSG)) return JIM_ERR; if (SDL_Init(SDL_INIT_VIDEO) < 0) { JimSdlSetError(interp); return JIM_ERR; } atexit(SDL_Quit); Jim_CreateCommand(interp, "sdl.screen", JimSdlSurfaceCommand, NULL, NULL); return JIM_OK; }
int Jim_posixInit(Jim_Interp *interp) { if (Jim_PackageProvide(interp, "posix", "1.0", JIM_ERRMSG)) return JIM_ERR; #ifdef HAVE_FORK Jim_CreateCommand(interp, "os.fork", Jim_PosixForkCommand, NULL, NULL); #endif Jim_CreateCommand(interp, "os.wait", Jim_PosixWaitCommand, NULL, NULL); Jim_CreateCommand(interp, "os.getids", Jim_PosixGetidsCommand, NULL, NULL); Jim_CreateCommand(interp, "os.gethostname", Jim_PosixGethostnameCommand, NULL, NULL); Jim_CreateCommand(interp, "os.uptime", Jim_PosixUptimeCommand, NULL, NULL); Jim_CreateCommand(interp, "pid", Jim_PosixPidCommand, NULL, NULL); return JIM_OK; }
// end added int Jim_OnLoad(Jim_Interp *interp) { Jim_InitExtension(interp); if (Jim_PackageProvide(interp, "posix", "1.0", JIM_ERRMSG) != JIM_OK) return JIM_ERR; Jim_CreateCommand(interp, "os.fork", Jim_PosixForkCommand, NULL, NULL); Jim_CreateCommand(interp, "os.sleep", Jim_PosixSleepCommand, NULL, NULL); Jim_CreateCommand(interp, "os.getids", Jim_PosixGetidsCommand, NULL, NULL); Jim_CreateCommand(interp, "os.gethostname", Jim_PosixGethostnameCommand, NULL, NULL); Jim_CreateCommand(interp, "os.sethostname", Jim_PosixSethostnameCommand, NULL, NULL); Jim_CreateCommand(interp, "os.usleep", Jim_LinuxUSleepCommand, NULL, NULL); Jim_CreateCommand(interp, "os.signal", Jim_PosixSignalCommand, NULL, NULL); Jim_CreateCommand(interp, "pit", Jim_PointInTimeCommand, NULL, NULL); Jim_CreateCommand(interp, "Jpit", Jim_PointInTimeJulianCommand, NULL, NULL); return JIM_OK; }
int Jim_aioInit(Jim_Interp *interp) { if (Jim_PackageProvide(interp, "aio", "1.0", JIM_ERRMSG)) return JIM_ERR; Jim_CreateCommand(interp, "open", JimAioOpenCommand, NULL, NULL); #ifndef JIM_ANSIC Jim_CreateCommand(interp, "socket", JimAioSockCommand, NULL, NULL); #endif /* Create filehandles for stdin, stdout and stderr */ JimMakeChannel(interp, stdin, -1, NULL, "stdin", 0, "r"); JimMakeChannel(interp, stdout, -1, NULL, "stdout", 0, "w"); JimMakeChannel(interp, stderr, -1, NULL, "stderr", 0, "w"); return JIM_OK; }
int Jim_syslogInit(Jim_Interp *interp) { SyslogInfo *info; if (Jim_PackageProvide(interp, "syslog", "1.0", JIM_ERRMSG)) return JIM_ERR; info = Jim_Alloc(sizeof(*info)); info->logOpened = 0; info->options = 0; info->facility = LOG_USER; info->ident[0] = 0; Jim_CreateCommand(interp, "syslog", Jim_SyslogCmd, info, Jim_SyslogCmdDelete); return JIM_OK; }
int Jim_eventloopInit(Jim_Interp *interp) { Jim_EventLoop *eventLoop; if (Jim_PackageProvide(interp, "eventloop", "1.0", JIM_ERRMSG)) return JIM_ERR; eventLoop = Jim_Alloc(sizeof(*eventLoop)); memset(eventLoop, 0, sizeof(*eventLoop)); Jim_SetAssocData(interp, "eventloop", JimELAssocDataDeleProc, eventLoop); Jim_CreateCommand(interp, "vwait", JimELVwaitCommand, eventLoop, NULL); Jim_CreateCommand(interp, "update", JimELUpdateCommand, eventLoop, NULL); Jim_CreateCommand(interp, "after", JimELAfterCommand, eventLoop, NULL); return JIM_OK; }
int Jim_signalInit(Jim_Interp *interp) { if (Jim_PackageProvide(interp, "signal", "1.0", JIM_ERRMSG)) return JIM_ERR; /* Teach the jim core how to set a result from a sigmask */ interp->signal_set_result = signal_set_sigmask_result; /* Make sure we know where to store the signals which occur */ sigloc = &interp->sigmask; Jim_CreateCommand(interp, "signal", Jim_SubCmdProc, (void *)signal_command_table, NULL); Jim_CreateCommand(interp, "alarm", Jim_AlarmCmd, 0, 0); Jim_CreateCommand(interp, "kill", Jim_KillCmd, 0, 0); /* Sleep is slightly dubious here */ Jim_CreateCommand(interp, "sleep", Jim_SleepCmd, 0, 0); return JIM_OK; }
int Jim_eventloopInit(Jim_Interp *interp) { Jim_EventLoop *eventLoop; if (Jim_PackageProvide(interp, "eventloop", "1.0", JIM_ERRMSG)) return JIM_ERR; eventLoop = Jim_Alloc(sizeof(*eventLoop)); eventLoop->fileEventHead = NULL; eventLoop->timeEventHead = NULL; eventLoop->timeEventNextId = 1; eventLoop->suppress_bgerror = 0; Jim_SetAssocData(interp, "eventloop", JimELAssocDataDeleProc, eventLoop); Jim_CreateCommand(interp, "vwait", JimELVwaitCommand, eventLoop, NULL); Jim_CreateCommand(interp, "update", JimELUpdateCommand, eventLoop, NULL); Jim_CreateCommand(interp, "after", JimELAfterCommand, eventLoop, NULL); return JIM_OK; }
DLLEXPORT int Jim_OnLoad(Jim_Interp *interp) { HMODULE hLib; Jim_InitExtension(interp); if (Jim_PackageProvide(interp, "win32", "1.0", JIM_ERRMSG) != JIM_OK) return JIM_ERR; #define CMD(name) \ Jim_CreateCommand(interp, "win32." #name , Win32_ ## name , NULL, NULL) CMD(ShellExecute); CMD(RegisterClass); CMD(CreateWindow); CMD(FindWindow); CMD(CloseWindow); CMD(ShowWindow); CMD(MoveWindow); CMD(UpdateWindow); CMD(DestroyWindow); CMD(GetActiveWindow); CMD(SetActiveWindow); CMD(SetForegroundWindow); CMD(GetCursorPos); CMD(SetCursorPos); CMD(GetCursor); CMD(SetCursor); CMD(LoadCursor); CMD(Beep); CMD(GetComputerName); CMD(SetComputerName); CMD(GetUserName); CMD(GetModuleFileName); CMD(GetVersion); CMD(GetTickCount); CMD(GetSystemTime); CMD(GetSystemInfo); CMD(GetModuleHandle); CMD(LoadLibrary); CMD(FreeLibrary); CMD(CreateDirectory); CMD(RemoveDirectory); #if WINVER >= 0x0500 CMD(GetCursorInfo); CMD(AnimateWindow); #endif /* Check that this DLL is available before creating the command. */ hLib = LoadLibrary(_T("psapi")); if (hLib != NULL) { Jim_CreateCommand(interp, "win32.GetPerformanceInfo", Win32_GetPerformanceInfo, hLib, Win32_ReleasePrivLib); } #if WINVER >= 0x0500 hLib = LoadLibrary(_T("user32")); if (hLib != NULL) { Jim_CreateCommand(interp, "win32.GetLastInputInfo", Win32_GetLastInputInfo, hLib, Win32_ReleasePrivLib); } #endif /* WINVER >= 0x0500 */ return JIM_OK; }