Bash
5.0-beta2
Bash - Bourne Again shell
|
#include "stdc.h"
Go to the source code of this file.
Data Structures | |
struct | word_desc |
struct | word_list |
union | REDIRECTEE |
struct | redirect |
struct | element |
struct | command |
struct | connection |
struct | pattern_list |
struct | case_com |
struct | for_com |
struct | if_com |
struct | while_com |
struct | cond_com |
struct | simple_com |
struct | function_def |
struct | group_com |
struct | subshell_com |
struct | coproc |
struct | coproc_com |
union | command.value |
Macros | |
#define | REDIR_VARASSIGN 0x01 |
#define | AMBIGUOUS_REDIRECT -1 |
#define | NOCLOBBER_REDIRECT -2 |
#define | RESTRICTED_REDIRECT -3 /* can only happen in restricted shells. */ |
#define | HEREDOC_REDIRECT -4 /* here-doc temp file can't be created */ |
#define | BADVAR_REDIRECT -5 /* something wrong with {varname}redir */ |
#define | CLOBBERING_REDIRECT(ri) (ri == r_output_direction || ri == r_err_and_out) |
#define | OUTPUT_REDIRECT(ri) (ri == r_output_direction || ri == r_input_output || ri == r_err_and_out || ri == r_append_err_and_out) |
#define | INPUT_REDIRECT(ri) (ri == r_input_direction || ri == r_inputa_direction || ri == r_input_output) |
#define | WRITE_REDIRECT(ri) |
#define | TRANSLATE_REDIRECT(ri) |
#define | W_HASDOLLAR 0x000001 /* Dollar sign present. */ |
#define | W_QUOTED 0x000002 /* Some form of quote character is present. */ |
#define | W_ASSIGNMENT 0x000004 /* This word is a variable assignment. */ |
#define | W_SPLITSPACE 0x000008 /* Split this word on " " regardless of IFS */ |
#define | W_NOSPLIT 0x000010 /* Do not perform word splitting on this word because ifs is empty string. */ |
#define | W_NOGLOB 0x000020 /* Do not perform globbing on this word. */ |
#define | W_NOSPLIT2 0x000040 /* Don't split word except for $@ expansion (using spaces) because context does not allow it. */ |
#define | W_TILDEEXP 0x000080 /* Tilde expand this assignment word */ |
#define | W_DOLLARAT 0x000100 /* $@ and its special handling */ |
#define | W_DOLLARSTAR 0x000200 /* $* and its special handling */ |
#define | W_NOCOMSUB 0x000400 /* Don't perform command substitution on this word */ |
#define | W_ASSIGNRHS 0x000800 /* Word is rhs of an assignment statement */ |
#define | W_NOTILDE 0x001000 /* Don't perform tilde expansion on this word */ |
#define | W_ITILDE 0x002000 /* Internal flag for word expansion */ |
#define | W_NOEXPAND 0x004000 /* Don't expand at all -- do quote removal */ |
#define | W_COMPASSIGN 0x008000 /* Compound assignment */ |
#define | W_ASSNBLTIN 0x010000 /* word is a builtin command that takes assignments */ |
#define | W_ASSIGNARG 0x020000 /* word is assignment argument to command */ |
#define | W_HASQUOTEDNULL 0x040000 /* word contains a quoted null character */ |
#define | W_DQUOTE 0x080000 /* word should be treated as if double-quoted */ |
#define | W_NOPROCSUB 0x100000 /* don't perform process substitution */ |
#define | W_SAWQUOTEDNULL 0x200000 /* word contained a quoted null that was removed */ |
#define | W_ASSIGNASSOC 0x400000 /* word looks like associative array assignment */ |
#define | W_ASSIGNARRAY 0x800000 /* word looks like a compound indexed array assignment */ |
#define | W_ARRAYIND 0x1000000 /* word is an array index being expanded */ |
#define | W_ASSNGLOBAL 0x2000000 /* word is a global assignment to declare (declare/typeset -g) */ |
#define | W_NOBRACE 0x4000000 /* Don't perform brace expansion */ |
#define | W_COMPLETE 0x8000000 /* word is being expanded for completion */ |
#define | W_CHKLOCAL 0x10000000 /* check for local vars on assignment */ |
#define | W_NOASSNTILDE 0x20000000 /* don't do tilde expansion like an assignment statement */ |
#define | PF_NOCOMSUB 0x01 /* Do not perform command substitution */ |
#define | PF_IGNUNBOUND 0x02 /* ignore unbound vars even if -u set */ |
#define | PF_NOSPLIT2 0x04 /* same as W_NOSPLIT2 */ |
#define | PF_ASSIGNRHS 0x08 /* same as W_ASSIGNRHS */ |
#define | PF_COMPLETE 0x10 /* same as W_COMPLETE, sets SX_COMPLETE */ |
#define | SUBSHELL_ASYNC 0x01 /* subshell caused by `command &' */ |
#define | SUBSHELL_PAREN 0x02 /* subshell caused by ( ... ) */ |
#define | SUBSHELL_COMSUB 0x04 /* subshell caused by `command` or $(command) */ |
#define | SUBSHELL_FORK 0x08 /* subshell caused by executing a disk command */ |
#define | SUBSHELL_PIPE 0x10 /* subshell from a pipeline element */ |
#define | SUBSHELL_PROCSUB 0x20 /* subshell caused by <(command) or >(command) */ |
#define | SUBSHELL_COPROC 0x40 /* subshell from a coproc pipeline */ |
#define | SUBSHELL_RESETTRAP 0x80 /* subshell needs to reset trap strings on first call to trap */ |
#define | CMD_WANT_SUBSHELL 0x01 /* User wants a subshell: ( command ) */ |
#define | CMD_FORCE_SUBSHELL 0x02 /* Shell needs to force a subshell. */ |
#define | CMD_INVERT_RETURN 0x04 /* Invert the exit value. */ |
#define | CMD_IGNORE_RETURN 0x08 /* Ignore the exit value. For set -e. */ |
#define | CMD_NO_FUNCTIONS 0x10 /* Ignore functions during command lookup. */ |
#define | CMD_INHIBIT_EXPANSION 0x20 /* Do not expand the command words. */ |
#define | CMD_NO_FORK 0x40 /* Don't fork; just call execve */ |
#define | CMD_TIME_PIPELINE 0x80 /* Time a pipeline */ |
#define | CMD_TIME_POSIX 0x100 /* time -p; use POSIX.2 time output spec. */ |
#define | CMD_AMPERSAND 0x200 /* command & */ |
#define | CMD_STDIN_REDIR 0x400 /* async command needs implicit </dev/null */ |
#define | CMD_COMMAND_BUILTIN 0x0800 /* command executed by `command' builtin */ |
#define | CMD_COPROC_SUBSHELL 0x1000 |
#define | CMD_LASTPIPE 0x2000 |
#define | CMD_STDPATH 0x4000 /* use standard path for command lookup */ |
#define | CASEPAT_FALLTHROUGH 0x01 |
#define | CASEPAT_TESTNEXT 0x02 |
#define | COND_AND 1 |
#define | COND_OR 2 |
#define | COND_UNARY 3 |
#define | COND_BINARY 4 |
#define | COND_TERM 5 |
#define | COND_EXPR 6 |
#define | COPROC_RUNNING 0x01 |
#define | COPROC_DEAD 0x02 |
#define | CMDERR_DEFAULT 0 |
#define | CMDERR_BADTYPE 1 |
#define | CMDERR_BADCONN 2 |
#define | CMDERR_BADJUMP 3 |
#define | CMDERR_LAST 3 |
Typedefs | |
typedef struct word_desc | WORD_DESC |
typedef struct word_list | WORD_LIST |
typedef struct redirect | REDIRECT |
typedef struct element | ELEMENT |
typedef struct command | COMMAND |
typedef struct connection | CONNECTION |
typedef struct pattern_list | PATTERN_LIST |
typedef struct case_com | CASE_COM |
typedef struct for_com | FOR_COM |
typedef struct if_com | IF_COM |
typedef struct while_com | WHILE_COM |
typedef struct cond_com | COND_COM |
typedef struct simple_com | SIMPLE_COM |
typedef struct function_def | FUNCTION_DEF |
typedef struct group_com | GROUP_COM |
typedef struct subshell_com | SUBSHELL_COM |
typedef struct coproc | Coproc |
typedef struct coproc_com | COPROC_COM |
Functions | |
FUNCTION_DEF *copy_function_def_contents | __P ((FUNCTION_DEF *, FUNCTION_DEF *)) |
FUNCTION_DEF *copy_function_def | __P ((FUNCTION_DEF *)) |
WORD_DESC *copy_word | __P ((WORD_DESC *)) |
WORD_LIST *copy_word_list | __P ((WORD_LIST *)) |
REDIRECT *copy_redirect | __P ((REDIRECT *)) |
COMMAND *copy_command | __P ((COMMAND *)) |
Variables | |
COMMAND * | global_command |
Coproc | sh_coproc |
struct word_list |
union REDIRECTEE |
struct redirect |
Data Fields | ||
---|---|---|
struct redirect * | next | |
REDIRECTEE | redirector | |
int | rflags | |
int | flags | |
enum r_instruction | instruction | |
REDIRECTEE | redirectee | |
char * | here_doc_eof |
struct element |
struct command |
Data Fields | ||
---|---|---|
enum command_type | type | |
int | flags | |
int | line | |
REDIRECT * | redirects | |
union command | value |
struct connection |
struct pattern_list |
Data Fields | ||
---|---|---|
struct pattern_list * | next | |
WORD_LIST * | patterns | |
COMMAND * | action | |
int | flags |
struct case_com |
Data Fields | ||
---|---|---|
int | flags | |
int | line | |
WORD_DESC * | word | |
PATTERN_LIST * | clauses |
struct for_com |
struct if_com |
struct while_com |
struct cond_com |
struct simple_com |
struct function_def |
struct subshell_com |
struct coproc |
struct coproc_com |
union command.value |
Data Fields | ||
---|---|---|
struct for_com * | For | |
struct case_com * | Case | |
struct while_com * | While | |
struct if_com * | If | |
struct connection * | Connection | |
struct simple_com * | Simple | |
struct function_def * | Function_def | |
struct group_com * | Group | |
struct subshell_com * | Subshell | |
struct coproc_com * | Coproc |
#define REDIR_VARASSIGN 0x01 |
Definition at line 39 of file command.h.
Referenced by copy_redirect(), dispose_redirects(), do_redirection_internal(), execute_null_command(), print_heredoc_header(), print_redirection(), print_redirection_list(), redirection_error(), stdin_redirects(), and yyparse().
#define AMBIGUOUS_REDIRECT -1 |
Definition at line 42 of file command.h.
Referenced by cat_file(), do_redirection_internal(), redir_special_open(), and redirection_error().
#define NOCLOBBER_REDIRECT -2 |
Definition at line 43 of file command.h.
Referenced by do_redirection_internal(), noclobber_open(), redir_open(), and redirection_error().
#define RESTRICTED_REDIRECT -3 /* can only happen in restricted shells. */ |
Definition at line 44 of file command.h.
Referenced by do_redirection_internal(), redir_special_open(), and redirection_error().
Definition at line 45 of file command.h.
Referenced by do_redirection_internal(), and redirection_error().
#define BADVAR_REDIRECT -5 /* something wrong with {varname}redir */ |
Definition at line 46 of file command.h.
Referenced by redir_varassign(), and redirection_error().
#define CLOBBERING_REDIRECT | ( | ri | ) | (ri == r_output_direction || ri == r_err_and_out) |
Definition at line 48 of file command.h.
Referenced by redir_open().
#define OUTPUT_REDIRECT | ( | ri | ) | (ri == r_output_direction || ri == r_input_output || ri == r_err_and_out || ri == r_append_err_and_out) |
#define INPUT_REDIRECT | ( | ri | ) | (ri == r_input_direction || ri == r_inputa_direction || ri == r_input_output) |
Definition at line 54 of file command.h.
Referenced by do_redirection_internal(), and execute_null_command().
#define WRITE_REDIRECT | ( | ri | ) |
Definition at line 57 of file command.h.
Referenced by do_redirection_internal().
#define TRANSLATE_REDIRECT | ( | ri | ) |
Definition at line 66 of file command.h.
Referenced by do_redirection_internal(), and execute_null_command().
#define W_HASDOLLAR 0x000001 /* Dollar sign present. */ |
Definition at line 76 of file command.h.
Referenced by check_identifier(), make_word_flags(), and yyparse().
#define W_QUOTED 0x000002 /* Some form of quote character is present. */ |
Definition at line 77 of file command.h.
Referenced by check_identifier(), execute_simple_command(), if(), list_string(), make_here_document(), make_select_command(), make_word_flags(), print_heredoc_header(), quote_list(), word_split(), write_here_document(), and yyparse().
#define W_ASSIGNMENT 0x000004 /* This word is a variable assignment. */ |
Definition at line 78 of file command.h.
Referenced by do_assignment(), do_assignment_no_expand(), fix_assignment_words(), if(), and yyparse().
#define W_SPLITSPACE 0x000008 /* Split this word on " " regardless of IFS */ |
Definition at line 79 of file command.h.
Referenced by expand_word_internal(), param_expand(), parameter_brace_expand(), and parameter_brace_expand_rhs().
#define W_NOSPLIT 0x000010 /* Do not perform word splitting on this word because ifs is empty string. */ |
Definition at line 80 of file command.h.
Referenced by expand_word_leave_quoted(), fix_assignment_words(), make_select_command(), redirection_expand(), and yyparse().
#define W_NOGLOB 0x000020 /* Do not perform globbing on this word. */ |
Definition at line 81 of file command.h.
Referenced by do_redirection_internal(), fix_assignment_words(), if(), make_select_command(), redirection_error(), and yyparse().
#define W_NOSPLIT2 0x000040 /* Don't split word except for $@ expansion (using spaces) because context does not allow it. */ |
Definition at line 82 of file command.h.
Referenced by expand_arith_string(), expand_string_assignment(), expand_string_for_pat(), expand_string_for_rhs(), and expand_word_leave_quoted().
#define W_TILDEEXP 0x000080 /* Tilde expand this assignment word */ |
Definition at line 83 of file command.h.
Referenced by fix_assignment_words().
#define W_DOLLARAT 0x000100 /* $@ and its special handling */ |
Definition at line 84 of file command.h.
Referenced by param_expand(), and parameter_brace_expand().
#define W_DOLLARSTAR 0x000200 /* $* and its special handling */ |
#define W_NOCOMSUB 0x000400 /* Don't perform command substitution on this word */ |
Definition at line 86 of file command.h.
Referenced by disable_priv_mode(), expand_word_internal(), if(), and redirection_error().
#define W_ASSIGNRHS 0x000800 /* Word is rhs of an assignment statement */ |
Definition at line 87 of file command.h.
Referenced by expand_string_assignment(), expand_string_for_rhs(), expand_word_internal(), and if().
#define W_NOTILDE 0x001000 /* Don't perform tilde expansion on this word */ |
#define W_ITILDE 0x002000 /* Internal flag for word expansion */ |
Definition at line 89 of file command.h.
Referenced by expand_word_internal().
#define W_NOEXPAND 0x004000 /* Don't expand at all -- do quote removal */ |
#define W_COMPASSIGN 0x008000 /* Compound assignment */ |
#define W_ASSNBLTIN 0x010000 /* word is a builtin command that takes assignments */ |
Definition at line 92 of file command.h.
Referenced by fix_assignment_words().
#define W_ASSIGNARG 0x020000 /* word is assignment argument to command */ |
Definition at line 93 of file command.h.
Referenced by fix_assignment_words(), and shell_expand_word_list().
#define W_HASQUOTEDNULL 0x040000 /* word contains a quoted null character */ |
Definition at line 94 of file command.h.
Referenced by if(), list_string(), param_expand(), parameter_brace_expand(), parameter_brace_expand_rhs(), parameter_brace_expand_word(), and quote_list().
#define W_DQUOTE 0x080000 /* word should be treated as if double-quoted */ |
Definition at line 95 of file command.h.
Referenced by make_select_command(), and yyparse().
#define W_NOPROCSUB 0x100000 /* don't perform process substitution */ |
Definition at line 96 of file command.h.
Referenced by disable_priv_mode(), expand_arith_string(), expand_word_internal(), if(), and make_select_command().
#define W_SAWQUOTEDNULL 0x200000 /* word contained a quoted null that was removed */ |
Definition at line 97 of file command.h.
Referenced by parameter_brace_expand_rhs().
#define W_ASSIGNASSOC 0x400000 /* word looks like associative array assignment */ |
Definition at line 98 of file command.h.
Referenced by fix_assignment_words().
#define W_ASSIGNARRAY 0x800000 /* word looks like a compound indexed array assignment */ |
Definition at line 99 of file command.h.
Referenced by fix_assignment_words(), and shell_expand_word_list().
#define W_ARRAYIND 0x1000000 /* word is an array index being expanded */ |
Definition at line 100 of file command.h.
Referenced by parameter_brace_expand_word().
#define W_ASSNGLOBAL 0x2000000 /* word is a global assignment to declare (declare/typeset -g) */ |
Definition at line 101 of file command.h.
Referenced by fix_assignment_words().
#define W_NOBRACE 0x4000000 /* Don't perform brace expansion */ |
#define W_COMPLETE 0x8000000 /* word is being expanded for completion */ |
#define W_CHKLOCAL 0x10000000 /* check for local vars on assignment */ |
Definition at line 104 of file command.h.
Referenced by do_assignment_internal(), fix_assignment_words(), and shell_expand_word_list().
#define W_NOASSNTILDE 0x20000000 /* don't do tilde expansion like an assignment statement */ |
Definition at line 105 of file command.h.
Referenced by expand_string_for_rhs().
#define PF_NOCOMSUB 0x01 /* Do not perform command substitution */ |
Definition at line 109 of file command.h.
Referenced by expand_word_internal(), and param_expand().
#define PF_IGNUNBOUND 0x02 /* ignore unbound vars even if -u set */ |
Definition at line 110 of file command.h.
Referenced by param_expand(), parameter_brace_expand(), and parameter_brace_find_indir().
#define PF_NOSPLIT2 0x04 /* same as W_NOSPLIT2 */ |
Definition at line 111 of file command.h.
Referenced by expand_word_internal(), param_expand(), parameter_brace_expand(), parameter_brace_expand_word(), and parameter_brace_patsub().
#define PF_ASSIGNRHS 0x08 /* same as W_ASSIGNRHS */ |
Definition at line 112 of file command.h.
Referenced by expand_string_for_rhs(), expand_word_internal(), param_expand(), parameter_brace_casemod(), parameter_brace_expand(), parameter_brace_expand_word(), parameter_brace_find_indir(), parameter_brace_patsub(), read_comsub(), and string_list_dollar_at().
#define PF_COMPLETE 0x10 /* same as W_COMPLETE, sets SX_COMPLETE */ |
Definition at line 113 of file command.h.
Referenced by expand_word_internal(), and param_expand().
#define SUBSHELL_ASYNC 0x01 /* subshell caused by `command &' */ |
Definition at line 116 of file command.h.
Referenced by command_substitute(), do_redirection_internal(), execute_in_subshell(), execute_null_command(), execute_simple_command(), execute_subshell_builtin_or_function(), make_child(), parameter_brace_remove_pattern(), run_debug_trap(), stop_pipeline(), and wait_for().
#define SUBSHELL_PAREN 0x02 /* subshell caused by ( ... ) */ |
Definition at line 117 of file command.h.
Referenced by execute_in_subshell().
#define SUBSHELL_COMSUB 0x04 /* subshell caused by `command` or $(command) */ |
Definition at line 118 of file command.h.
Referenced by command_substitute(), notify_of_job_status(), parameter_brace_remove_pattern(), parse_and_execute(), sh_exit(), termsig_handler(), and wait_for().
#define SUBSHELL_FORK 0x08 /* subshell caused by executing a disk command */ |
Definition at line 119 of file command.h.
Referenced by execute_disk_command(), execute_simple_command(), and parameter_brace_remove_pattern().
#define SUBSHELL_PIPE 0x10 /* subshell from a pipeline element */ |
Definition at line 120 of file command.h.
Referenced by command_substitute(), execute_in_subshell(), execute_null_command(), execute_simple_command(), execute_subshell_builtin_or_function(), make_child(), parameter_brace_remove_pattern(), run_debug_trap(), and wait_for().
#define SUBSHELL_PROCSUB 0x20 /* subshell caused by <(command) or >(command) */ |
Definition at line 121 of file command.h.
Referenced by parameter_brace_remove_pattern(), sh_exit(), and termsig_handler().
#define SUBSHELL_COPROC 0x40 /* subshell from a coproc pipeline */ |
Definition at line 122 of file command.h.
Referenced by execute_in_subshell().
#define SUBSHELL_RESETTRAP 0x80 /* subshell needs to reset trap strings on first call to trap */ |
Definition at line 123 of file command.h.
Referenced by command_substitute(), execute_in_subshell(), and execute_simple_command().
#define CMD_WANT_SUBSHELL 0x01 /* User wants a subshell: ( command ) */ |
Definition at line 174 of file command.h.
Referenced by connect_async_list(), execute_command_internal(), execute_in_subshell(), make_coproc_command(), make_subshell_command(), and yyparse().
#define CMD_FORCE_SUBSHELL 0x02 /* Shell needs to force a subshell. */ |
Definition at line 175 of file command.h.
Referenced by execute_command_internal(), execute_connection(), and execute_in_subshell().
#define CMD_INVERT_RETURN 0x04 /* Invert the exit value. */ |
Definition at line 176 of file command.h.
Referenced by execute_command_internal(), execute_connection(), execute_if_command(), execute_in_subshell(), make_command_string_internal(), optimize_subshell_command(), print_if_command(), should_suppress_fork(), and yyparse().
#define CMD_IGNORE_RETURN 0x08 /* Ignore the exit value. For set -e. */ |
Definition at line 177 of file command.h.
Referenced by execute_builtin(), execute_case_command(), execute_command_internal(), execute_connection(), execute_for_command(), execute_function(), execute_if_command(), execute_in_subshell(), execute_pipeline(), execute_simple_command(), execute_while_or_until(), and parse_and_execute().
#define CMD_NO_FUNCTIONS 0x10 /* Ignore functions during command lookup. */ |
Definition at line 178 of file command.h.
Referenced by execute_simple_command().
#define CMD_INHIBIT_EXPANSION 0x20 /* Do not expand the command words. */ |
Definition at line 179 of file command.h.
Referenced by execute_simple_command().
#define CMD_NO_FORK 0x40 /* Don't fork; just call execve */ |
Definition at line 180 of file command.h.
Referenced by execute_command_internal(), execute_disk_command(), execute_in_subshell(), execute_simple_command(), execute_subshell_builtin_or_function(), optimize_fork(), optimize_subshell_command(), and parse_and_execute().
#define CMD_TIME_PIPELINE 0x80 /* Time a pipeline */ |
Definition at line 181 of file command.h.
Referenced by execute_command_internal(), execute_in_subshell(), make_command_string_internal(), optimize_subshell_command(), parse_and_execute(), should_suppress_fork(), and yyparse().
#define CMD_TIME_POSIX 0x100 /* time -p; use POSIX.2 time output spec. */ |
Definition at line 182 of file command.h.
Referenced by execute_command_internal(), execute_in_subshell(), make_command_string_internal(), and yyparse().
#define CMD_AMPERSAND 0x200 /* command & */ |
Definition at line 183 of file command.h.
Referenced by execute_connection().
#define CMD_STDIN_REDIR 0x400 /* async command needs implicit </dev/null */ |
Definition at line 184 of file command.h.
Referenced by execute_command_internal(), execute_connection(), execute_disk_command(), execute_in_subshell(), and execute_simple_command().
#define CMD_COMMAND_BUILTIN 0x0800 /* command executed by `command' builtin */ |
Definition at line 185 of file command.h.
Referenced by execute_builtin(), and execute_command_internal().
#define CMD_COPROC_SUBSHELL 0x1000 |
Definition at line 186 of file command.h.
Referenced by make_coproc_command(), and yyparse().
#define CMD_LASTPIPE 0x2000 |
Definition at line 187 of file command.h.
Referenced by execute_pipeline().
#define CMD_STDPATH 0x4000 /* use standard path for command lookup */ |
Definition at line 188 of file command.h.
Referenced by execute_disk_command().
#define CASEPAT_FALLTHROUGH 0x01 |
Definition at line 233 of file command.h.
Referenced by execute_case_command(), print_case_clauses(), and yyparse().
#define CASEPAT_TESTNEXT 0x02 |
Definition at line 234 of file command.h.
Referenced by execute_case_command(), print_case_clauses(), and yyparse().
#define COND_AND 1 |
Definition at line 315 of file command.h.
Referenced by execute_if_command(), print_if_command(), and yyparse().
#define COND_OR 2 |
Definition at line 316 of file command.h.
Referenced by execute_if_command(), print_if_command(), and yyparse().
#define COND_UNARY 3 |
Definition at line 317 of file command.h.
Referenced by execute_if_command(), print_if_command(), and yyparse().
#define COND_BINARY 4 |
Definition at line 318 of file command.h.
Referenced by execute_if_command(), print_if_command(), and yyparse().
#define COND_TERM 5 |
Definition at line 319 of file command.h.
Referenced by print_if_command(), and yyparse().
#define COND_EXPR 6 |
Definition at line 320 of file command.h.
Referenced by execute_if_command(), print_if_command(), and yyparse().
#define COPROC_RUNNING 0x01 |
Definition at line 361 of file command.h.
Referenced by execute_in_subshell().
#define COPROC_DEAD 0x02 |
Definition at line 362 of file command.h.
Referenced by execute_in_subshell().
#define CMDERR_DEFAULT 0 |
Definition at line 386 of file command.h.
Referenced by command_error(), and command_errstr().
#define CMDERR_BADTYPE 1 |
Definition at line 387 of file command.h.
Referenced by clean_simple_command(), dispose_command(), execute_command_internal(), execute_if_command(), and make_command_string_internal().
#define CMDERR_BADCONN 2 |
Definition at line 388 of file command.h.
Referenced by execute_connection().
#define CMDERR_BADJUMP 3 |
Definition at line 389 of file command.h.
Referenced by disable_priv_mode(), parse_and_execute(), parse_string(), and reader_loop().
#define CMDERR_LAST 3 |
Definition at line 391 of file command.h.
Referenced by command_error(), and command_errstr().
typedef struct connection CONNECTION |
typedef struct pattern_list PATTERN_LIST |
typedef struct simple_com SIMPLE_COM |
typedef struct function_def FUNCTION_DEF |
typedef struct subshell_com SUBSHELL_COM |
typedef struct coproc_com COPROC_COM |
enum r_instruction |
Definition at line 28 of file command.h.
enum command_type |
Enumerator | |
---|---|
cm_for | |
cm_case | |
cm_while | |
cm_if | |
cm_simple | |
cm_select | |
cm_connection | |
cm_function_def | |
cm_until | |
cm_group | |
cm_arith | |
cm_cond | |
cm_arith_for | |
cm_subshell | |
cm_coproc |
Definition at line 71 of file command.h.
FUNCTION_DEF* copy_function_def_contents __P | ( | (FUNCTION_DEF *, FUNCTION_DEF *) | ) |
FUNCTION_DEF* copy_function_def __P | ( | (FUNCTION_DEF *) | ) |
WORD_LIST* copy_word_list __P | ( | (WORD_LIST *) | ) |
REDIRECT* copy_redirect __P | ( | (REDIRECT *) | ) |
COMMAND* copy_command __P | ( | (COMMAND *) | ) |
COMMAND* global_command |
Definition at line 113 of file shell.c.
Referenced by parse_and_execute(), parse_string(), pretty_print_loop(), read_command(), reader_loop(), and yyparse().
Coproc sh_coproc |
Referenced by execute_in_subshell().