42sh
Core
42sh (Shell State)
AST (Abstract Syntax Tree)
Builtins
Executor
Expander
History
Job Control
Lexer
Signals
Variables
Tests
minunit.h - Test Framework
test_runner.c
test_btree.c
test_dlist.c
test_history.c
test_lexer.c
test_list.c
test_parser.c
test_executor.c
test_stubs.c
42sh
Index
Index
A
|
B
|
C
|
D
|
E
|
F
|
G
|
H
|
I
|
J
|
L
|
M
|
N
|
O
|
P
|
R
|
S
|
T
|
V
|
W
|
X
A
access_failure (C function)
append_redirs (C function)
apply_assignments (C function)
,
[1]
apply_dup_redir (C function)
apply_one_redir (C function)
argv_append_all (C function)
arith_eval (C function)
assert_argv_at (C function)
assert_assignment_at (C function)
assert_command_node (C function)
assert_token_type (C function)
ast_free (C function)
,
[1]
ast_new_binary (C function)
,
[1]
ast_new_command (C function)
,
[1]
ast_new_group (C function)
,
[1]
ast_to_string (C function)
,
[1]
ast_walk (C function)
B
bg_apply_assignments (C function)
bg_child (C function)
bg_simple_child (C function)
BUFSIZE (C macro)
build_path (C function)
builtin_alias (C function)
builtin_bg (C function)
,
[1]
builtin_cd (C function)
,
[1]
builtin_echo (C function)
,
[1]
builtin_exit (C function)
,
[1]
builtin_export (C function)
builtin_fg (C function)
,
[1]
builtin_get (C function)
,
[1]
builtin_hash (C function)
builtin_history (C function)
,
[1]
builtin_is_builtin (C function)
,
[1]
builtin_jobs (C function)
,
[1]
builtin_kill (C function)
builtin_pwd (C function)
builtin_set (C function)
builtin_test (C function)
builtin_type (C function)
,
[1]
builtin_unalias (C function)
builtin_unset (C function)
C
change_directory (C function)
close_pipes (C function)
cmd_free (C function)
,
[1]
CMD_HASH_BUCKETS (C macro)
cmd_hash_clear (C function)
cmd_hash_delete (C function)
cmd_hash_destroy (C function)
cmd_hash_get (C function)
cmd_hash_init (C function)
cmd_hash_iter (C function)
cmd_hash_set (C function)
cmd_to_string (C function)
,
[1]
collect_arith_token (C function)
collect_fields (C function)
collect_heredoc (C function)
collect_heredocs_from_command (C function)
collect_heredocs_from_group (C function)
collect_heredocs_from_list (C function)
collect_pipeline (C function)
command_build (C function)
command_init (C function)
command_size (C function)
concatenate (C function)
consume_delimiter (C function)
create_operator_token (C function)
D
del_dummy (C function)
del_int (C function)
del_item (C function)
detect_and_or (C function)
detect_option (C function)
detect_separator (C function)
dispatch_node (C function)
display_base (C function)
display_token (C function)
dummy_new (C function)
E
empty_array (C function)
exec_assignment_only (C function)
exec_builtin (C function)
exec_child (C function)
exec_pipeline_external (C function)
,
[1]
execute_and (C function)
,
[1]
execute_background (C function)
,
[1]
execute_block (C function)
,
[1]
execute_or (C function)
,
[1]
execute_pipeline (C function)
,
[1]
execute_sequence (C function)
,
[1]
execute_simple_command (C function)
,
[1]
execute_subshell (C function)
,
[1]
executor_execute (C function)
,
[1]
expand_argv (C function)
expand_arithmetic (C function)
expand_assignment (C function)
expand_assignments (C function)
expand_cmdsub (C function)
expand_command (C function)
,
[1]
expand_dollar (C function)
expand_pipeline_stages (C function)
expand_redir_target (C function)
expand_redirs (C function)
expand_tilde_at (C function)
expand_word (C function)
,
[1]
expand_word_into (C function)
expand_word_to_fields (C function)
,
[1]
extract_io_number (C function)
F
field_split (C function)
,
[1]
filename_too_long (C function)
find_command (C function)
,
[1]
fork_exit_and_get (C function)
fork_signal_and_get (C function)
fork_stage (C function)
free_argv (C function)
,
[1]
free_cmd_ast (C function)
free_echo_ast (C function)
free_split (C function)
G
g_arith_depth (C var)
g_mu_failed (C var)
,
[1]
g_mu_passed (C var)
,
[1]
g_sigint_heredoc (C var)
g_signal_received (C var)
get_exit_status (C function)
,
[1]
H
heredoc_expand_config (C function)
,
[1]
heredoc_sigint_handler (C function)
history_file_path (C function)
history_init (C function)
history_load (C function)
history_save (C function)
I
int_cmp (C function)
is_assignment (C function)
is_cmdsub_start (C function)
is_heredoc (C function)
is_ifs_split (C function)
is_ifs_ws (C function)
is_invalid_path (C function)
is_numeric (C function)
is_operator (C function)
,
[1]
is_operator_start (C function)
,
[1]
is_redir (C function)
,
[1]
is_valid_option (C function)
is_valid_symbol (C function)
J
job_add_process (C function)
job_apply_status (C function)
job_continue_background (C function)
job_continue_foreground (C function)
job_control_cleanup (C function)
job_control_init (C function)
job_create (C function)
job_find_by_id (C function)
job_find_by_pid (C function)
job_find_by_spec (C function)
job_free (C function)
job_launch_background (C function)
job_launch_foreground (C function)
job_notify (C function)
job_print_line (C function)
job_print_termination (C function)
job_recompute_status (C function)
job_remove (C function)
job_status_str (C function)
job_update_statuses (C function)
job_wait (C function)
join_free (C function)
join_paths (C function)
L
launch_simple_job (C function)
launch_subshell_job (C function)
lexer_check_quotes (C function)
lexer_free_tokens (C function)
,
[1]
lexer_reset_state (C function)
,
[1]
lexer_tokenize (C function)
,
[1]
lookup_cached (C function)
LST_ALIAS (C macro)
lst_append (C function)
LST_DUMMY (C macro)
LST_JOB (C macro)
LST_PROC (C macro)
LST_VAR (C macro)
M
main (C function)
make_echo_to_file (C function)
make_false_cmd (C function)
make_true_cmd (C function)
materialise (C function)
MAX_PIPELINE (C macro)
MAX_SAVED_FDS (C macro)
mu_assert (C function)
MU_ASSERT (C macro)
mu_assert_int (C function)
MU_ASSERT_INT (C macro)
mu_assert_str (C function)
MU_ASSERT_STR (C macro)
mu_run (C function)
MU_RUN (C macro)
mu_summary (C function)
MU_SUMMARY (C macro)
N
no_such_file_or_directory (C function)
no_such_job (C function)
,
[1]
not_a_directory (C function)
nth_token (C function)
O
one_empty_field (C function)
open_pipes (C function)
operator_type (C function)
P
P2_MISSING_PATH (C macro)
P2_NOEXEC_PATH (C macro)
parse_and_or (C function)
,
[1]
parse_assignment (C function)
parse_block (C function)
,
[1]
parse_command (C function)
,
[1]
parse_expr (C function)
parse_group (C function)
parse_group_cleanup (C function)
parse_list (C function)
,
[1]
parse_pipeline (C function)
,
[1]
parse_simple_command (C function)
,
[1]
parse_subshell (C function)
,
[1]
parse_type_opts (C function)
parser_accept (C function)
,
[1]
parser_collect_heredocs (C function)
,
[1]
parser_error_unexpected (C function)
parser_next (C function)
,
[1]
parser_parse (C function)
,
[1]
parser_peek (C function)
,
[1]
permission_denied (C function)
pipe_child (C function)
pop_queued_heredoc (C function)
prewarm_cmd_cache (C function)
prewarm_pipeline_cache (C function)
print_entries (C function)
publish_pwd (C function)
push_field (C function)
R
read_heredoc (C function)
read_operator (C function)
,
[1]
read_operator_crashes (C function)
read_word (C function)
,
[1]
REDIR (C macro)
redir_free (C function)
,
[1]
,
[2]
redir_get_fd (C function)
redir_new (C function)
redir_open_file (C function)
report_ambiguous_redir (C function)
report_command_error (C function)
,
[1]
report_write_error (C function)
resolve_path (C function)
restore_assigns (C function)
restore_redirections (C function)
,
[1]
run_shell (C function)
S
save_and_apply_assigns (C function)
search_path (C function)
setup_redirections (C function)
,
[1]
shell_read_line (C function)
shell_read_logical_line (C function)
signals_check (C function)
signals_setup_child (C function)
signals_setup_executing (C function)
signals_setup_interactive (C function)
single_field (C function)
skip_ifs_ws (C function)
spawn_pipeline (C function)
split_assignment (C function)
,
[1]
strip_tab (C function)
stub_shell_cleanup (C function)
,
[1]
stub_shell_init (C function)
,
[1]
subshell_child (C function)
T
t_alias (C struct)
t_alias.name (C var)
t_alias.value (C var)
t_arith (C struct)
t_arith.error (C var)
t_arith.i (C var)
t_arith.s (C var)
t_ast (C struct)
t_ast.binary (C var)
t_ast.cmd (C var)
t_ast.data (C var)
t_ast.group (C var)
t_ast.type (C var)
t_binary (C struct)
t_binary.left (C var)
t_binary.right (C var)
t_builtin_entry (C struct)
t_builtin_entry.fn (C var)
t_builtin_entry.name (C var)
t_builtin_fn (C type)
t_cmd (C struct)
t_cmd.argc (C var)
t_cmd.argv (C var)
t_cmd.assignments (C var)
t_cmd.redirs (C var)
t_cmd_hash_value (C struct)
t_cmd_hash_value.hits (C var)
t_cmd_hash_value.path (C var)
t_dummy (C struct)
t_dummy.id (C var)
t_dummy.name (C var)
t_field (C struct)
t_field.len (C var)
t_field.start (C var)
t_group (C struct)
t_group.child (C var)
t_group.redirs (C var)
t_job (C struct)
t_job.cmd_line (C var)
t_job.foreground (C var)
t_job.id (C var)
t_job.notified (C var)
t_job.pgid (C var)
t_job.processes (C var)
t_job.status (C var)
t_job_status (C enum)
t_job_status.JOB_DONE (C enumerator)
t_job_status.JOB_RUNNING (C enumerator)
t_job_status.JOB_STOPPED (C enumerator)
t_job_status.JOB_TERMINATED (C enumerator)
t_node_type (C enum)
t_node_type.NODE_AND (C enumerator)
t_node_type.NODE_BACKGROUND (C enumerator)
t_node_type.NODE_BLOCK (C enumerator)
t_node_type.NODE_COMMAND (C enumerator)
t_node_type.NODE_OR (C enumerator)
t_node_type.NODE_PIPE (C enumerator)
t_node_type.NODE_SEQUENCE (C enumerator)
t_node_type.NODE_SUBSHELL (C enumerator)
t_operator (C struct)
t_operator.literal (C var)
t_operator.type (C var)
t_parser (C struct)
t_parser.current (C var)
t_parser.error (C var)
t_parser.tokens (C var)
t_process (C struct)
t_process.cmd (C var)
t_process.completed (C var)
t_process.pid (C var)
t_process.status (C var)
t_process.stopped (C var)
t_redir (C struct)
t_redir.fd (C var)
t_redir.heredoc_delim (C var)
t_redir.heredoc_fd (C var)
t_redir.heredoc_quoted (C var)
t_redir.target (C var)
t_redir.type (C var)
t_shell (C struct)
(C type)
,
[1]
,
[2]
,
[3]
t_shell.aliases (C var)
t_shell.cmd_entrypoint (C var)
t_shell.cmd_hash (C var)
t_shell.current_job (C var)
t_shell.env (C var)
t_shell.env_dirty (C var)
t_shell.exit_confirmed (C var)
t_shell.heredoc_body_queue (C var)
t_shell.history_file (C var)
t_shell.interactive (C var)
t_shell.jobs (C var)
t_shell.last_exit_status (C var)
t_shell.original_termios (C var)
t_shell.running (C var)
t_shell.shell_pgid (C var)
t_shell.terminal_fd (C var)
t_shell.variables (C var)
t_test_context (C struct)
t_test_context.argc (C var)
t_test_context.argv (C var)
t_test_context.pos (C var)
t_test_context.syntax_error (C var)
t_token (C struct)
t_token.io_number (C var)
t_token.type (C var)
t_token.value (C var)
t_token_type (C enum)
t_token_type.TOK_AMPERSAND (C enumerator)
t_token_type.TOK_AND (C enumerator)
t_token_type.TOK_ARITH_CLOSE (C enumerator)
t_token_type.TOK_ARITH_OPEN (C enumerator)
t_token_type.TOK_EOF (C enumerator)
t_token_type.TOK_ERROR (C enumerator)
t_token_type.TOK_HEREDOC (C enumerator)
t_token_type.TOK_HEREDOC_STRIP (C enumerator)
t_token_type.TOK_LPAREN (C enumerator)
t_token_type.TOK_NEWLINE (C enumerator)
t_token_type.TOK_OR (C enumerator)
t_token_type.TOK_PIPE (C enumerator)
t_token_type.TOK_REDIR_APPEND (C enumerator)
t_token_type.TOK_REDIR_DUP_IN (C enumerator)
t_token_type.TOK_REDIR_DUP_OUT (C enumerator)
t_token_type.TOK_REDIR_IN (C enumerator)
t_token_type.TOK_REDIR_OUT (C enumerator)
t_token_type.TOK_RPAREN (C enumerator)
t_token_type.TOK_SEMICOLON (C enumerator)
t_token_type.TOK_WORD (C enumerator)
t_var (C struct)
t_var.exported (C var)
t_var.name (C var)
t_var.readonly (C var)
t_var.value (C var)
t_xbuf (C struct)
t_xbuf.cap (C var)
t_xbuf.data (C var)
t_xbuf.len (C var)
t_xbuf.mask (C var)
test_alias_suite (C function)
test_and (C function)
test_and_newline (C function)
test_arithmetic_suite (C function)
test_assignment (C function)
test_assignment_after_argv_is_arg (C function)
test_assignment_after_command (C function)
test_assignment_alnum_value (C function)
test_assignment_and_args (C function)
test_assignment_before_subshell (C function)
test_assignment_dash_in_name_falls_to_argv (C function)
test_assignment_dollar_value (C function)
test_assignment_double_quoted (C function)
test_assignment_double_quoted_dollar (C function)
test_assignment_double_quoted_empty (C function)
test_assignment_double_quoted_with_hash_and_equals (C function)
test_assignment_double_quoted_with_space (C function)
test_assignment_in_pipeline (C function)
test_assignment_leading_equals_falls_to_argv (C function)
test_assignment_many_bare_then_args (C function)
test_assignment_mixed_quoted_and_bare (C function)
test_assignment_only (C function)
test_assignment_only_empty_value (C function)
test_assignment_only_multiple (C function)
test_assignment_pipeline_quoted_both_sides (C function)
test_assignment_single_quoted (C function)
test_assignment_underscore_inside_name (C function)
test_assignment_underscore_name (C function)
test_assignment_value_with_extra_equals (C function)
test_assignment_with_redir (C function)
test_assignment_with_two_redirs (C function)
test_b1_exit_stops_or_chain (C function)
test_b1_exit_stops_sequence (C function)
test_b2_assignment_reaches_pipeline (C function)
test_b4_missing_path_is_127 (C function)
test_b4_not_executable_is_126 (C function)
test_background_separator (C function)
test_btree_suite (C function)
,
[1]
test_builtin_alias_suite (C function)
test_builtin_cd_suite (C function)
test_builtin_echo_suite (C function)
test_builtin_exit_suite (C function)
test_builtin_export_suite (C function)
test_builtin_hash_suite (C function)
test_builtin_set_suite (C function)
test_builtin_temp_assignments (C function)
test_builtin_test_suite (C function)
test_builtin_type_suite (C function)
test_builtin_unset_suite (C function)
test_command_args (C function)
test_complex_logical_chains (C function)
test_complex_redir (C function)
test_dlist_suite (C function)
,
[1]
test_empty_value_assignment (C function)
test_execute_and (C function)
test_execute_assignment_only (C function)
test_execute_background (C function)
test_execute_block (C function)
test_execute_builtin_command (C function)
test_execute_external_command (C function)
test_execute_or (C function)
test_execute_pipeline (C function)
test_execute_pipeline_three (C function)
test_execute_sequence (C function)
test_execute_subshell (C function)
test_execute_subshell_isolation (C function)
test_executor_dispatch (C function)
test_executor_suite (C function)
,
[1]
test_expander_suite (C function)
test_find_command (C function)
test_get_exit_status (C function)
test_heredoc_basic (C function)
test_heredoc_bugs_suite (C function)
test_heredoc_empty (C function)
test_heredoc_group (C function)
test_heredoc_multiline (C function)
test_heredoc_pipe (C function)
test_heredoc_quoted_no_expand (C function)
test_heredoc_stripped_basic (C function)
test_heredoc_stripped_empty (C function)
test_heredoc_stripped_group (C function)
test_heredoc_stripped_multiline (C function)
test_heredoc_stripped_pipe (C function)
test_heredoc_stripped_quoted_no_expand (C function)
test_heredoc_stripped_unterminated (C function)
test_heredoc_stripped_with_redir (C function)
test_heredoc_unterminated (C function)
test_heredoc_with_redir (C function)
test_history_suite (C function)
,
[1]
test_interactive_suite (C function)
test_invalid_assignment_digit (C function)
test_is_operator_false (C function)
test_is_operator_start_digit_not_redir (C function)
test_is_operator_start_io_number (C function)
test_is_operator_start_simple (C function)
test_is_operator_start_word (C function)
test_is_operator_true (C function)
test_job_control_suite (C function)
test_lexer_suite (C function)
,
[1]
test_list_suite (C function)
,
[1]
test_multiple_assignments (C function)
test_multiple_background_chain (C function)
test_multiple_redirs (C function)
test_no_heredoc (C function)
test_only_and (C function)
test_only_or_and (C function)
test_only_pipe (C function)
test_or (C function)
test_parser_suite (C function)
,
[1]
test_pipe (C function)
test_pipe_newline (C function)
test_pipeline_exit_status (C function)
test_pipeline_with_heredoc (C function)
test_plus_equals_not_assignment (C function)
test_read_operator_double_char (C function)
test_read_operator_io_number (C function)
test_read_operator_malformed_no_crash (C function)
test_read_operator_single_char (C function)
test_read_word_backslash_escape (C function)
test_read_word_double_quote (C function)
test_read_word_pipe_in_single_quote (C function)
test_read_word_simple (C function)
test_read_word_single_quote (C function)
test_read_word_stops_at_operator (C function)
test_redirection (C function)
test_redirections_append (C function)
test_redirections_bad_file (C function)
test_redirections_heredoc_in_list (C function)
test_redirections_input (C function)
test_redirections_output (C function)
test_redirections_save_restore (C function)
test_redirs_in_a_row (C function)
test_sequence (C function)
test_sequence_mixed (C function)
test_simple_command (C function)
test_split_assignment (C function)
test_subshell_pipe (C function)
test_subshell_redir (C function)
test_token_new_basic (C function)
test_token_new_io_number (C function)
test_tokenize_and_or (C function)
test_tokenize_empty (C function)
test_tokenize_heredoc (C function)
test_tokenize_heredoc_strip (C function)
test_tokenize_io_number (C function)
test_tokenize_newline_separator (C function)
test_tokenize_pipe (C function)
test_tokenize_quoted_operators (C function)
test_tokenize_redirect_out (C function)
test_tokenize_simple_command (C function)
test_tokenize_subshell (C function)
test_tokenize_whitespace_trimmed (C function)
test_trailing_background (C function)
test_unclose_parenthesis (C function)
test_unopen_parenthesis (C function)
test_variables_suite (C function)
toggle (C function)
TOK (C macro)
token_free (C function)
,
[1]
token_new (C function)
,
[1]
type_all (C function)
type_default (C function)
type_dispatch (C function)
TYPE_F_A (C macro)
TYPE_F_P (C macro)
TYPE_F_T (C macro)
type_free_dirs (C function)
type_invalid_option (C function)
type_join (C function)
type_kind (C function)
type_path (C function)
type_path_matches (C function)
V
var_export (C function)
var_get (C function)
var_get_environ (C function)
var_get_value (C function)
var_init_from_environ (C function)
var_is_assignment (C function)
var_is_valid_identifier (C function)
var_set (C function)
var_unset (C function)
W
word_has_quote (C function)
write_line (C function)
write_to_pipe (C function)
,
[1]
X
xbuf_free (C function)
xbuf_init (C function)
xbuf_putc (C function)
xbuf_puts (C function)