📄 posix.xs
字号:
#else goto not_there;#endif break; case 'S': if (strnEQ(name, "SIG", 3)) { if (name[3] == '_') { if (strEQ(name, "SIG_BLOCK"))#ifdef SIG_BLOCK return SIG_BLOCK;#else goto not_there;#endif#ifdef SIG_DFL if (strEQ(name, "SIG_DFL")) return (IV)SIG_DFL;#endif#ifdef SIG_ERR if (strEQ(name, "SIG_ERR")) return (IV)SIG_ERR;#endif#ifdef SIG_IGN if (strEQ(name, "SIG_IGN")) return (IV)SIG_IGN;#endif if (strEQ(name, "SIG_SETMASK"))#ifdef SIG_SETMASK return SIG_SETMASK;#else goto not_there;#endif if (strEQ(name, "SIG_UNBLOCK"))#ifdef SIG_UNBLOCK return SIG_UNBLOCK;#else goto not_there;#endif break; } if (strEQ(name, "SIGABRT"))#ifdef SIGABRT return SIGABRT;#else goto not_there;#endif if (strEQ(name, "SIGALRM"))#ifdef SIGALRM return SIGALRM;#else goto not_there;#endif if (strEQ(name, "SIGCHLD"))#ifdef SIGCHLD return SIGCHLD;#else goto not_there;#endif if (strEQ(name, "SIGCONT"))#ifdef SIGCONT return SIGCONT;#else goto not_there;#endif if (strEQ(name, "SIGFPE"))#ifdef SIGFPE return SIGFPE;#else goto not_there;#endif if (strEQ(name, "SIGHUP"))#ifdef SIGHUP return SIGHUP;#else goto not_there;#endif if (strEQ(name, "SIGILL"))#ifdef SIGILL return SIGILL;#else goto not_there;#endif if (strEQ(name, "SIGINT"))#ifdef SIGINT return SIGINT;#else goto not_there;#endif if (strEQ(name, "SIGKILL"))#ifdef SIGKILL return SIGKILL;#else goto not_there;#endif if (strEQ(name, "SIGPIPE"))#ifdef SIGPIPE return SIGPIPE;#else goto not_there;#endif if (strEQ(name, "SIGQUIT"))#ifdef SIGQUIT return SIGQUIT;#else goto not_there;#endif if (strEQ(name, "SIGSEGV"))#ifdef SIGSEGV return SIGSEGV;#else goto not_there;#endif if (strEQ(name, "SIGSTOP"))#ifdef SIGSTOP return SIGSTOP;#else goto not_there;#endif if (strEQ(name, "SIGTERM"))#ifdef SIGTERM return SIGTERM;#else goto not_there;#endif if (strEQ(name, "SIGTSTP"))#ifdef SIGTSTP return SIGTSTP;#else goto not_there;#endif if (strEQ(name, "SIGTTIN"))#ifdef SIGTTIN return SIGTTIN;#else goto not_there;#endif if (strEQ(name, "SIGTTOU"))#ifdef SIGTTOU return SIGTTOU;#else goto not_there;#endif if (strEQ(name, "SIGUSR1"))#ifdef SIGUSR1 return SIGUSR1;#else goto not_there;#endif if (strEQ(name, "SIGUSR2"))#ifdef SIGUSR2 return SIGUSR2;#else goto not_there;#endif break; } if (name[1] == '_') { if (strEQ(name, "S_ISGID"))#ifdef S_ISGID return S_ISGID;#else goto not_there;#endif if (strEQ(name, "S_ISUID"))#ifdef S_ISUID return S_ISUID;#else goto not_there;#endif if (strEQ(name, "S_IRGRP"))#ifdef S_IRGRP return S_IRGRP;#else goto not_there;#endif if (strEQ(name, "S_IROTH"))#ifdef S_IROTH return S_IROTH;#else goto not_there;#endif if (strEQ(name, "S_IRUSR"))#ifdef S_IRUSR return S_IRUSR;#else goto not_there;#endif if (strEQ(name, "S_IRWXG"))#ifdef S_IRWXG return S_IRWXG;#else goto not_there;#endif if (strEQ(name, "S_IRWXO"))#ifdef S_IRWXO return S_IRWXO;#else goto not_there;#endif if (strEQ(name, "S_IRWXU"))#ifdef S_IRWXU return S_IRWXU;#else goto not_there;#endif if (strEQ(name, "S_IWGRP"))#ifdef S_IWGRP return S_IWGRP;#else goto not_there;#endif if (strEQ(name, "S_IWOTH"))#ifdef S_IWOTH return S_IWOTH;#else goto not_there;#endif if (strEQ(name, "S_IWUSR"))#ifdef S_IWUSR return S_IWUSR;#else goto not_there;#endif if (strEQ(name, "S_IXGRP"))#ifdef S_IXGRP return S_IXGRP;#else goto not_there;#endif if (strEQ(name, "S_IXOTH"))#ifdef S_IXOTH return S_IXOTH;#else goto not_there;#endif if (strEQ(name, "S_IXUSR"))#ifdef S_IXUSR return S_IXUSR;#else goto not_there;#endif errno = EAGAIN; /* the following aren't constants */#ifdef S_ISBLK if (strEQ(name, "S_ISBLK")) return S_ISBLK(arg);#endif#ifdef S_ISCHR if (strEQ(name, "S_ISCHR")) return S_ISCHR(arg);#endif#ifdef S_ISDIR if (strEQ(name, "S_ISDIR")) return S_ISDIR(arg);#endif#ifdef S_ISFIFO if (strEQ(name, "S_ISFIFO")) return S_ISFIFO(arg);#endif#ifdef S_ISREG if (strEQ(name, "S_ISREG")) return S_ISREG(arg);#endif break; } if (strEQ(name, "SEEK_CUR"))#ifdef SEEK_CUR return SEEK_CUR;#else goto not_there;#endif if (strEQ(name, "SEEK_END"))#ifdef SEEK_END return SEEK_END;#else goto not_there;#endif if (strEQ(name, "SEEK_SET"))#ifdef SEEK_SET return SEEK_SET;#else goto not_there;#endif if (strEQ(name, "STREAM_MAX"))#ifdef STREAM_MAX return STREAM_MAX;#else goto not_there;#endif if (strEQ(name, "SHRT_MAX"))#ifdef SHRT_MAX return SHRT_MAX;#else goto not_there;#endif if (strEQ(name, "SHRT_MIN"))#ifdef SHRT_MIN return SHRT_MIN;#else goto not_there;#endif if (strnEQ(name, "SA_", 3)) { if (strEQ(name, "SA_NOCLDSTOP"))#ifdef SA_NOCLDSTOP return SA_NOCLDSTOP;#else goto not_there;#endif if (strEQ(name, "SA_NOCLDWAIT"))#ifdef SA_NOCLDWAIT return SA_NOCLDWAIT;#else goto not_there;#endif if (strEQ(name, "SA_NODEFER"))#ifdef SA_NODEFER return SA_NODEFER;#else goto not_there;#endif if (strEQ(name, "SA_ONSTACK"))#ifdef SA_ONSTACK return SA_ONSTACK;#else goto not_there;#endif if (strEQ(name, "SA_RESETHAND"))#ifdef SA_RESETHAND return SA_RESETHAND;#else goto not_there;#endif if (strEQ(name, "SA_RESTART"))#ifdef SA_RESTART return SA_RESTART;#else goto not_there;#endif if (strEQ(name, "SA_SIGINFO"))#ifdef SA_SIGINFO return SA_SIGINFO;#else goto not_there;#endif break; } if (strEQ(name, "SCHAR_MAX"))#ifdef SCHAR_MAX return SCHAR_MAX;#else goto not_there;#endif if (strEQ(name, "SCHAR_MIN"))#ifdef SCHAR_MIN return SCHAR_MIN;#else goto not_there;#endif if (strEQ(name, "SSIZE_MAX"))#ifdef SSIZE_MAX return SSIZE_MAX;#else goto not_there;#endif if (strEQ(name, "STDIN_FILENO"))#ifdef STDIN_FILENO return STDIN_FILENO;#else goto not_there;#endif if (strEQ(name, "STDOUT_FILENO"))#ifdef STDOUT_FILENO return STDOUT_FILENO;#else goto not_there;#endif if (strEQ(name, "STDERR_FILENO"))#ifdef STDERR_FILENO return STDERR_FILENO;#else goto not_there;#endif break; case 'T': if (strEQ(name, "TCIFLUSH"))#ifdef TCIFLUSH return TCIFLUSH;#else goto not_there;#endif if (strEQ(name, "TCIOFF"))#ifdef TCIOFF return TCIOFF;#else goto not_there;#endif if (strEQ(name, "TCIOFLUSH"))#ifdef TCIOFLUSH return TCIOFLUSH;#else goto not_there;#endif if (strEQ(name, "TCION"))#ifdef TCION return TCION;#else goto not_there;#endif if (strEQ(name, "TCOFLUSH"))#ifdef TCOFLUSH return TCOFLUSH;#else goto not_there;#endif if (strEQ(name, "TCOOFF"))#ifdef TCOOFF return TCOOFF;#else goto not_there;#endif if (strEQ(name, "TCOON"))#ifdef TCOON return TCOON;#else goto not_there;#endif if (strEQ(name, "TCSADRAIN"))#ifdef TCSADRAIN return TCSADRAIN;#else goto not_there;#endif if (strEQ(name, "TCSAFLUSH"))#ifdef TCSAFLUSH return TCSAFLUSH;#else goto not_there;#endif if (strEQ(name, "TCSANOW"))#ifdef TCSANOW return TCSANOW;#else goto not_there;#endif if (strEQ(name, "TMP_MAX"))#ifdef TMP_MAX return TMP_MAX;#else goto not_there;#endif if (strEQ(name, "TOSTOP"))#ifdef TOSTOP return TOSTOP;#else goto not_there;#endif if (strEQ(name, "TZNAME_MAX"))#ifdef TZNAME_MAX return TZNAME_MAX;#else goto not_there;#endif break; case 'U': if (strEQ(name, "UCHAR_MAX"))#ifdef UCHAR_MAX return UCHAR_MAX;#else goto not_there;#endif if (strEQ(name, "UINT_MAX"))#ifdef UINT_MAX return UINT_MAX;#else goto not_there;#endif if (strEQ(name, "ULONG_MAX"))#ifdef ULONG_MAX return ULONG_MAX;#else goto not_there;#endif if (strEQ(name, "USHRT_MAX"))#ifdef USHRT_MAX return USHRT_MAX;#else goto not_there;#endif break; case 'V': if (strEQ(name, "VEOF"))#ifdef VEOF return VEOF;#else goto not_there;#endif if (strEQ(name, "VEOL"))#ifdef VEOL return VEOL;#else goto not_there;#endif if (strEQ(name, "VERASE"))#ifdef VERASE return VERASE;#else goto not_there;#endif if (strEQ(name, "VINTR"))#ifdef VINTR return VINTR;#else goto not_there;#endif if (strEQ(name, "VKILL"))#ifdef VKILL return VKILL;#else goto not_there;#endif if (strEQ(name, "VMIN"))#ifdef VMIN return VMIN;#else goto not_there;#endif if (strEQ(name, "VQUIT"))#ifdef VQUIT return VQUIT;#else goto not_there;#endif if (strEQ(name, "VSTART"))#ifdef VSTART return VSTART;#else goto not_there;#endif if (strEQ(name, "VSTOP"))#ifdef VSTOP return VSTOP;#else goto not_there;#endif if (strEQ(name, "VSUSP"))#ifdef VSUSP return VSUSP;#else goto not_there;#endif if (strEQ(name, "VTIME"))#ifdef VTIME return VTIME;#else goto not_there;#endif break; case 'W': if (strEQ(name, "W_OK"))#ifdef W_OK return W_OK;#else goto not_there;#endif if (strEQ(name, "WNOHANG"))#ifdef WNOHANG return WNOHANG;#else goto not_there;#endif if (strEQ(name, "WUNTRACED"))#ifdef WUNTRACED return WUNTRACED;#else goto not_there;#endif errno = EAGAIN; /* the following aren't constants */#ifdef WEXITSTATUS if (strEQ(name, "WEXITSTATUS")) return WEXITSTATUS(arg);#endif#ifdef WIFEXITED if (strEQ(name, "WIFEXITED")) return WIFEXITED(arg);#endif#ifdef WIFSIGNALED if (strEQ(name, "WIFSIGNALED")) return WIFSIGNALED(arg);#endif#ifdef WIFSTOPPED if (strEQ(name, "WIFSTOPPED")) return WIFSTOPPED(arg);#endif#ifdef WSTOPSIG if (strEQ(name, "WSTOPSIG")) return WSTOPSIG(arg);#endif#ifdef WTERMSIG if (strEQ(name, "WTERMSIG")) return WTERMSIG(arg);#endif break; case 'X': if (strEQ(name, "X_OK"))#ifdef X_OK return X_OK;#else goto not_there;#endif break; case '_': if (strnEQ(name, "_PC_", 4)) { if (strEQ(name, "_PC_CHOWN_RESTRICTED"))#if defined(_PC_CHOWN_RESTRICTED) || HINT_SC_EXIST return _PC_CHOWN_RESTRICTED;#else goto not_there;#endif if (strEQ(name, "_PC_LINK_MAX"))#if defined(_PC_LINK_MAX) || HINT_SC_EXIST return _PC_LINK_MAX;#else goto not_there;#endif if (strEQ(name, "_PC_MAX_CANON"))#if defined(_PC_MAX_CANON) || HINT_SC_EXIST return _PC_MAX_CANON;#else goto not_there;#endif if (strEQ(name, "_PC_MAX_INPUT"))#if defined(_PC_MAX_INPUT) || HINT_SC_EXIST return _PC_MAX_INPUT;#else goto not_there;#endif if (strEQ(name, "_PC_NAME_MAX"))#if defined(_PC_NAME_MAX) || HINT_SC_EXIST return _PC_NAME_MAX;#else goto not_there;#endif if (strEQ(name, "_PC_NO_TRUNC"))#if defined(_PC_NO_TRUNC) || HINT_SC_EXIST return _PC_NO_TRUNC;#else goto not_there;#endif if (strEQ(name, "_PC_PATH_MAX"))#if defined(_PC_PATH_MAX) || HINT_SC_EXIST return _PC_PATH_MAX;#else goto not_there;#endif if (strEQ(name, "_PC_PIPE_BUF"))#if defined(_PC_PIPE_BUF) || HINT_SC_EXIST return _PC_PIPE_BUF;#else goto not_there;#endif if (strEQ(name, "_PC_VDISABLE"))#if defined(_PC_VDISABLE) || HINT_SC_EXIST
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -