PUBLIC void ejsConfigureAppType(Ejs *ejs) { EjsType *type; if ((type = ejsFinalizeScriptType(ejs, N("ejs", "App"), 0, 0, 0)) == 0) { return; } ejsSetProperty(ejs, type, ES_App__inputStream, ejsCreateFileFromFd(ejs, 0, "stdin", O_RDONLY)); ejsSetProperty(ejs, type, ES_App__outputStream, ejsCreateFileFromFd(ejs, 1, "stdout", O_WRONLY)); ejsSetProperty(ejs, type, ES_App__errorStream, ejsCreateFileFromFd(ejs, 2, "stderr", O_WRONLY)); ejsBindMethod(ejs, type, ES_App_args, app_args); ejsBindMethod(ejs, type, ES_App_createSearch, app_createSearch); ejsBindMethod(ejs, type, ES_App_dir, app_dir); ejsBindMethod(ejs, type, ES_App_chdir, app_chdir); ejsBindMethod(ejs, type, ES_App_exeDir, app_exeDir); ejsBindMethod(ejs, type, ES_App_exePath, app_exePath); ejsBindMethod(ejs, type, ES_App_env, app_env); ejsBindMethod(ejs, type, ES_App_exit, app_exit); ejsBindMethod(ejs, type, ES_App_getenv, app_getenv); ejsBindMethod(ejs, type, ES_App_gid, app_gid); ejsBindMethod(ejs, type, ES_App_putenv, app_putenv); ejsBindMethod(ejs, type, ES_App_pid, app_pid); ejsBindMethod(ejs, type, ES_App_run, app_run); ejsBindAccess(ejs, type, ES_App_search, app_search, app_set_search); ejsBindMethod(ejs, type, ES_App_sleep, app_sleep); ejsBindMethod(ejs, type, ES_App_uid, app_uid); ejsBindMethod(ejs, type, ES_App_getpass, app_getpass); }
static EjsVar *getInputStream(Ejs *ejs, EjsObject *app, int argc, EjsVar **argv) { return (EjsVar*) ejsCreateFileFromFd(ejs, 0, "stdin", O_RDONLY); }
static EjsVar *getOutputStream(Ejs *ejs, EjsObject *app, int argc, EjsVar **argv) { return (EjsVar*) ejsCreateFileFromFd(ejs, 1, "stdout", O_WRONLY); }
static EjsVar *getErrorStream(Ejs *ejs, EjsObject *app, int argc, EjsVar **argv) { return (EjsVar*) ejsCreateFileFromFd(ejs, 2, "stderr", O_WRONLY); }