#include "ruby/ruby.h"#include "ruby/encoding.h"#include "internal.h"#include "eval_intern.h"#include "dln.h"#include <stdio.h>#include <sys/types.h>#include <ctype.h>#include "ruby/util.h"Go to the source code of this file.
Data Structures | |
| struct | cmdline_options |
| struct | load_file_arg |
Defines | |
| #define | numberof(array) (int)(sizeof(array) / sizeof((array)[0])) |
| #define | DEFAULT_RUBYGEMS_ENABLED "enabled" |
| #define | DISABLE_BIT(bit) (1U << disable_##bit) |
| #define | DUMP_BIT(bit) (1U << dump_##bit) |
| #define | src_encoding_index GET_VM()->src_encoding_index |
| #define | forbid_setid(s) forbid_setid((s), opt) |
| #define | M(shortopt, longopt, desc) |
| #define | SHOW(m) |
| #define | rubylib_mangled_path rb_str_new |
| #define | RUBY_RELATIVE(path, len) rubylib_mangled_path((path), (len)) |
| #define | PREFIX_PATH() RUBY_RELATIVE(exec_prefix, sizeof(exec_prefix)-1) |
| #define | NAME_MATCH_P(name, str, len) ((len) < (int)sizeof(name) && strncmp((str), (name), (len)) == 0) |
| #define | UNSET_WHEN(name, bit, str, len) |
| #define | SET_WHEN(name, bit, str, len) |
| #define | UNSET_WHEN_DISABLE(bit) UNSET_WHEN(#bit, DISABLE_BIT(bit), str, len) |
| #define | SET_WHEN_DISABLE(bit) SET_WHEN(#bit, DISABLE_BIT(bit), str, len) |
| #define | SET_WHEN_DUMP(bit) SET_WHEN(#bit, DUMP_BIT(bit), str, len) |
| #define | set_internal_encoding_once(opt, e, elen) set_option_encoding_once("default_internal", &(opt)->intern.enc.name, (e), (elen)) |
| #define | set_external_encoding_once(opt, e, elen) set_option_encoding_once("default_external", &(opt)->ext.enc.name, (e), (elen)) |
| #define | set_source_encoding_once(opt, e, elen) set_option_encoding_once("source", &(opt)->src.enc.name, (e), (elen)) |
| #define | is_option_end(c, allow_hyphen) (!(c) || ((allow_hyphen) && (c) == '-') || (c) == '=') |
| #define | check_envopt(name, allow_envopt) |
| #define | need_argument(name, s) |
| #define | is_option_with_arg(name, allow_hyphen, allow_envopt) |
| #define | set_encoding_part(type) |
| #define | rb_progname (GET_VM()->progname) |
| #define | rb_define_readonly_boolean(name, val) rb_define_virtual_variable((name), (val) ? true_value : false_value, 0) |
| #define | PREPARE_PARSE_MAIN(expr) |
Enumerations | |
| enum | disable_flag_bits { disable_gems, disable_rubyopt, disable_flag_count } |
| enum | dump_flag_bits { dump_version, dump_version_v, dump_copyright, dump_usage, dump_help, dump_yydebug, dump_syntax, dump_parsetree, dump_parsetree_with_comment, dump_insns, dump_flag_count } |
Functions | |
| char * | getenv () |
| static void | init_ids (struct cmdline_options *) |
| static struct cmdline_options * | cmdline_options_init (struct cmdline_options *opt) |
| static NODE * | load_file (VALUE, VALUE, int, struct cmdline_options *) |
| static void | forbid_setid (const char *, struct cmdline_options *) |
| static void | usage (const char *name, int help) |
| static void | push_include (const char *path, VALUE(*filter)(VALUE)) |
| void | ruby_push_include (const char *path, VALUE(*filter)(VALUE)) |
| static VALUE | identical_path (VALUE path) |
| static VALUE | locale_path (VALUE path) |
| void | ruby_incpush (const char *path) |
| static VALUE | expand_include_path (VALUE path) |
| void | ruby_incpush_expand (const char *path) |
| void | ruby_init_loadpath_safe (int safe_level) |
| void | ruby_init_loadpath (void) |
| static void | add_modules (VALUE *req_list, const char *mod) |
| static void | require_libraries (VALUE *req_list) |
| static rb_env_t * | toplevel_context (VALUE toplevel_binding) |
| static void | process_sflag (int *sflag) |
| static long | proc_options (long argc, char **argv, struct cmdline_options *opt, int envopt) |
| static void | moreswitches (const char *s, struct cmdline_options *opt, int envopt) |
| static void | enable_option (const char *str, int len, void *arg) |
| static void | disable_option (const char *str, int len, void *arg) |
| static void | dump_option (const char *str, int len, void *arg) |
| static void | set_option_encoding_once (const char *type, VALUE *name, const char *e, long elen) |
| static void | ruby_init_prelude (void) |
| static int | opt_enc_index (VALUE enc_name) |
| static VALUE | false_value (void) |
| static VALUE | true_value (void) |
| static VALUE | uscore_get (void) |
| static VALUE | rb_f_sub (int argc, VALUE *argv) |
| static VALUE | rb_f_gsub (int argc, VALUE *argv) |
| static VALUE | rb_f_chop (void) |
| static VALUE | rb_f_chomp (int argc, VALUE *argv) |
| void | Init_enc (void) |
| static VALUE | process_options (int argc, char **argv, struct cmdline_options *opt) |
| static VALUE | load_file_internal (VALUE arg) |
| static VALUE | restore_lineno (VALUE lineno) |
| void * | rb_load_file (const char *fname) |
| static void | set_arg0 (VALUE val, ID id) |
| void | ruby_script (const char *name) |
| Sets the current script name to this value. | |
| void | ruby_set_script_name (VALUE name) |
| Sets the current script name to this value. | |
| static void | verbose_setter (VALUE val, ID id, void *data) |
| static VALUE | opt_W_getter (ID id, void *data) |
| void | ruby_prog_init (void) |
| Defines built-in variables. | |
| void | ruby_set_argv (int argc, char **argv) |
| void * | ruby_process_options (int argc, char **argv) |
| static void | fill_standard_fds (void) |
| void | ruby_sysinit (int *argc, char ***argv) |
| Initializes the process for ruby(1). | |
Variables | |
| struct { | |
| int argc | |
| char ** argv | |
| } | origarg |
| VALUE | rb_argv0 |
| #define check_envopt | ( | name, | |||
| allow_envopt | ) |
(((allow_envopt) || !envopt) ? (void)0 : \
rb_raise(rb_eRuntimeError, "invalid switch in RUBYOPT: --" name))
| #define DEFAULT_RUBYGEMS_ENABLED "enabled" |
| #define DISABLE_BIT | ( | bit | ) | (1U << disable_##bit) |
Definition at line 63 of file ruby.c.
Referenced by cmdline_options_init(), and process_options().
| #define DUMP_BIT | ( | bit | ) | (1U << dump_##bit) |
Definition at line 70 of file ruby.c.
Referenced by proc_options(), and process_options().
| #define forbid_setid | ( | s | ) | forbid_setid((s), opt) |
Definition at line 127 of file ruby.c.
Referenced by load_file_internal(), proc_options(), and process_options().
| #define is_option_end | ( | c, | |||
| allow_hyphen | ) | (!(c) || ((allow_hyphen) && (c) == '-') || (c) == '=') |
| #define is_option_with_arg | ( | name, | |||
| allow_hyphen, | |||||
| allow_envopt | ) |
(strncmp((name), s, n = sizeof(name) - 1) == 0 && is_option_end(s[n], (allow_hyphen)) ? \ (check_envopt(name, (allow_envopt)), s += n, need_argument(name, s), 1) : 0)
Referenced by proc_options().
| #define M | ( | shortopt, | |||
| longopt, | |||||
| desc | ) |
{ \
shortopt " " longopt " " desc, \
(unsigned short)sizeof(shortopt), \
(unsigned short)sizeof(longopt), \
}
| #define NAME_MATCH_P | ( | name, | |||
| str, | |||||
| len | ) | ((len) < (int)sizeof(name) && strncmp((str), (name), (len)) == 0) |
Definition at line 685 of file ruby.c.
Referenced by disable_option(), and enable_option().
| #define need_argument | ( | name, | |||
| s | ) |
((*(s)++ ? !*(s) : (!--argc || !((s) = *++argv))) ? \ rb_raise(rb_eRuntimeError, "missing argument for --" name) \ : (void)0)
| #define numberof | ( | array | ) | (int)(sizeof(array) / sizeof((array)[0])) |
| #define PREFIX_PATH | ( | ) | RUBY_RELATIVE(exec_prefix, sizeof(exec_prefix)-1) |
Referenced by ruby_init_loadpath_safe().
| #define PREPARE_PARSE_MAIN | ( | expr | ) |
do { \ rb_env_t *env = toplevel_context(toplevel_binding); \ th->parse_in_eval--; \ th->base_block = &env->block; \ expr; \ th->parse_in_eval++; \ th->base_block = 0; \ } while (0)
Referenced by process_options().
| #define rb_progname (GET_VM()->progname) |
Definition at line 1190 of file ruby.c.
Referenced by process_options(), ruby_process_options(), ruby_prog_init(), ruby_script(), ruby_set_script_name(), and set_arg0().
| #define RUBY_RELATIVE | ( | path, | |||
| len | ) | rubylib_mangled_path((path), (len)) |
Referenced by ruby_init_loadpath_safe().
| #define rubylib_mangled_path rb_str_new |
Definition at line 250 of file ruby.c.
Referenced by push_include(), and ruby_init_loadpath_safe().
| #define set_encoding_part | ( | type | ) |
if (!(p = strchr(s, ':'))) { \ set_##type##_encoding_once(opt, s, 0); \ break; \ } \ else if (p > s) { \ set_##type##_encoding_once(opt, s, p-s); \ }
Referenced by proc_options().
| #define set_external_encoding_once | ( | opt, | |||
| e, | |||||
| elen | ) | set_option_encoding_once("default_external", &(opt)->ext.enc.name, (e), (elen)) |
Definition at line 761 of file ruby.c.
Referenced by proc_options().
| #define set_internal_encoding_once | ( | opt, | |||
| e, | |||||
| elen | ) | set_option_encoding_once("default_internal", &(opt)->intern.enc.name, (e), (elen)) |
Definition at line 759 of file ruby.c.
Referenced by proc_options().
| #define set_source_encoding_once | ( | opt, | |||
| e, | |||||
| elen | ) | set_option_encoding_once("source", &(opt)->src.enc.name, (e), (elen)) |
Definition at line 763 of file ruby.c.
Referenced by proc_options().
| #define SET_WHEN | ( | name, | |||
| bit, | |||||
| str, | |||||
| len | ) |
if (NAME_MATCH_P((name), (str), (len))) { \ *(unsigned int *)arg |= (bit); \ return; \ }
| #define SET_WHEN_DISABLE | ( | bit | ) | SET_WHEN(#bit, DISABLE_BIT(bit), str, len) |
Referenced by disable_option().
| #define SET_WHEN_DUMP | ( | bit | ) | SET_WHEN(#bit, DUMP_BIT(bit), str, len) |
Referenced by dump_option().
| #define SHOW | ( | m | ) |
do { \ int wrap = help && (m).namelen + (m).secondlen - 2 > w; \ printf(" %.*s%-*.*s%-*s%s\n", (m).namelen-1, (m).str, \ (wrap ? 0 : w - (m).namelen + 1), \ (help ? (m).secondlen-1 : 0), (m).str + (m).namelen, \ (wrap ? w + 3 : 0), (wrap ? "\n" : ""), \ (m).str + (m).namelen + (m).secondlen); \ } while (0)
Referenced by usage().
| #define src_encoding_index GET_VM()->src_encoding_index |
Definition at line 109 of file ruby.c.
Referenced by cmdline_options_init(), load_file_internal(), and process_options().
| #define UNSET_WHEN | ( | name, | |||
| bit, | |||||
| str, | |||||
| len | ) |
if (NAME_MATCH_P((name), (str), (len))) { \ *(unsigned int *)arg &= ~(bit); \ return; \ }
| #define UNSET_WHEN_DISABLE | ( | bit | ) | UNSET_WHEN(#bit, DISABLE_BIT(bit), str, len) |
Referenced by enable_option().
| enum disable_flag_bits |
| enum dump_flag_bits |
| static void add_modules | ( | VALUE * | req_list, | |
| const char * | mod | |||
| ) | [static] |
Definition at line 522 of file ruby.c.
References list, rb_ary_new(), rb_ary_push(), rb_str_new2, and RBASIC.
Referenced by proc_options().
| static struct cmdline_options* cmdline_options_init | ( | struct cmdline_options * | opt | ) | [static, read] |
Definition at line 112 of file ruby.c.
References cmdline_options::disable, DISABLE_BIT, cmdline_options::enc, cmdline_options::ext, init_ids(), cmdline_options::intern, MEMZERO, cmdline_options::src, and src_encoding_index.
Referenced by rb_load_file(), and ruby_process_options().
| static void disable_option | ( | const char * | str, | |
| int | len, | |||
| void * | arg | |||
| ) | [static] |
Definition at line 714 of file ruby.c.
References NAME_MATCH_P, rb_warn(), and SET_WHEN_DISABLE.
Referenced by proc_options().
| static void dump_option | ( | const char * | str, | |
| int | len, | |||
| void * | arg | |||
| ) | [static] |
Definition at line 727 of file ruby.c.
References rb_warn(), SET_WHEN_DUMP, usage(), version(), and yydebug.
Referenced by proc_options().
| static void enable_option | ( | const char * | str, | |
| int | len, | |||
| void * | arg | |||
| ) | [static] |
Definition at line 701 of file ruby.c.
References NAME_MATCH_P, rb_warn(), and UNSET_WHEN_DISABLE.
Referenced by proc_options().
| static VALUE expand_include_path | ( | VALUE | path | ) | [static] |
Definition at line 342 of file ruby.c.
References Qnil, rb_file_expand_path(), and RSTRING_PTR.
Referenced by ruby_incpush_expand(), and ruby_init_loadpath_safe().
| static VALUE false_value | ( | void | ) | [static] |
| static void fill_standard_fds | ( | void | ) | [static] |
| static void forbid_setid | ( | const char * | s, | |
| struct cmdline_options * | opt | |||
| ) | [static] |
Definition at line 1818 of file ruby.c.
References rb_eSecurityError, rb_raise(), cmdline_options::safe_level, and cmdline_options::setids.
| char* getenv | ( | ) |
| static VALUE identical_path | ( | VALUE | path | ) | [static] |
Definition at line 324 of file ruby.c.
Referenced by ruby_init_loadpath_safe().
| void Init_enc | ( | void | ) |
Definition at line 7 of file dmyext.c.
Referenced by init_libraries_internal(), and process_options().
| static void init_ids | ( | struct cmdline_options * | opt | ) | [static] |
Definition at line 1802 of file ruby.c.
References getegid(), geteuid(), getgid(), getuid(), cmdline_options::safe_level, and cmdline_options::setids.
Referenced by cmdline_options_init().
| static NODE * load_file | ( | VALUE | parser, | |
| VALUE | fname, | |||
| int | script, | |||
| struct cmdline_options * | opt | |||
| ) | [static] |
Definition at line 1740 of file ruby.c.
References load_file_arg::fname, load_file_internal(), load_file_arg::opt, load_file_arg::parser, rb_ensure(), rb_gv_get(), restore_lineno(), and load_file_arg::script.
Referenced by process_options(), and rb_load_file().
| static VALUE load_file_internal | ( | VALUE | arg | ) | [static] |
Definition at line 1566 of file ruby.c.
References CONST_ID, cmdline_options::enc, errno, cmdline_options::ext, f, FALSE, load_file_arg::fname, forbid_setid, fstat, INT2FIX, cmdline_options::intern, moreswitches(), NIL_P, O_BINARY, load_file_arg::opt, opt_enc_index(), load_file_arg::parser, Qnil, rb_ascii8bit_encoding(), rb_cloexec_open(), rb_define_global_const(), rb_enc_associate(), rb_enc_from_encoding(), rb_enc_from_index(), rb_funcall(), rb_io_close(), rb_io_fdopen(), rb_io_getbyte(), rb_io_gets(), rb_io_ungetbyte(), rb_load_fail(), rb_loaderror(), rb_locale_encoding(), rb_parser_compile_file(), rb_parser_compile_string(), rb_parser_encoding(), rb_parser_end_seen_p(), rb_stdin, rb_str_encode_ospath(), rb_str_new(), rb_str_new2, rb_str_new_cstr(), rb_update_max_fd(), rb_utf8_encoding(), cmdline_options::req_list, require_libraries(), RSTRING_LEN, RSTRING_PTR, ruby_set_script_name(), S_ISDIR, load_file_arg::script, cmdline_options::script_name, cmdline_options::src, src_encoding_index, stat, STRCASECMP, strerror(), StringValueCStr, strrchr(), strstr(), and cmdline_options::xflag.
Referenced by load_file().
| static VALUE locale_path | ( | VALUE | path | ) | [static] |
Definition at line 329 of file ruby.c.
References rb_enc_associate(), and rb_locale_encoding().
Referenced by ruby_incpush().
| static void moreswitches | ( | const char * | s, | |
| struct cmdline_options * | opt, | |||
| int | envopt | |||
| ) | [static] |
Definition at line 639 of file ruby.c.
References argc, argv, ISSPACE, proc_options(), rb_str_cat(), rb_str_resize(), RSTRING_LEN, RSTRING_PTR, and strlen().
Referenced by load_file_internal(), and process_options().
| static int opt_enc_index | ( | VALUE | enc_name | ) | [static] |
Definition at line 1176 of file ruby.c.
References rb_enc_find_index(), rb_enc_from_index(), rb_eRuntimeError, rb_raise(), and RSTRING_PTR.
Referenced by load_file_internal(), and process_options().
| static VALUE opt_W_getter | ( | ID | id, | |
| void * | data | |||
| ) | [static] |
| static long proc_options | ( | long | argc, | |
| char ** | argv, | |||
| struct cmdline_options * | opt, | |||
| int | envopt | |||
| ) | [static] |
Definition at line 767 of file ruby.c.
References add_modules(), cmdline_options::disable, disable_option(), cmdline_options::do_line, cmdline_options::do_loop, cmdline_options::do_print, cmdline_options::do_search, cmdline_options::do_split, cmdline_options::dump, DUMP_BIT, dump_option(), cmdline_options::e_script, enable_option(), cmdline_options::enc, enc_name(), cmdline_options::ext, forbid_setid, is_option_with_arg, ISPRINT, Qfalse, Qnil, Qtrue, rb_eRuntimeError, rb_fatal(), rb_fs, rb_output_rs, rb_raise(), rb_reg_new(), rb_rs, rb_str_cat2(), rb_str_new(), rb_str_new2, cmdline_options::req_list, ruby_debug, ruby_each_words(), ruby_incpush_expand(), ruby_set_inplace_mode(), ruby_verbose, cmdline_options::safe_level, scan_oct, cmdline_options::script, set_encoding_part, set_external_encoding_once, set_internal_encoding_once, set_source_encoding_once, cmdline_options::sflag, cmdline_options::src, strlen(), TRUE, usage(), cmdline_options::verbose, version(), cmdline_options::xflag, and yydebug.
Referenced by moreswitches(), and process_options().
| static VALUE process_options | ( | int | argc, | |
| char ** | argv, | |||
| struct cmdline_options * | opt | |||
| ) | [static] |
Definition at line 1300 of file ruby.c.
References cmdline_options::disable, DISABLE_BIT, dln_find_file_r(), cmdline_options::do_line, cmdline_options::do_loop, cmdline_options::do_print, cmdline_options::do_search, cmdline_options::do_split, cmdline_options::dump, DUMP_BIT, cmdline_options::e_script, cmdline_options::enc, cmdline_options::ext, fbuf, FL_TAINT, FL_UNSET, forbid_setid, GET_THREAD(), GET_VM, getenv(), Init_enc(), cmdline_options::intern, load_file(), MAXPATHLEN, moreswitches(), OBJ_TAINT, opt_enc_index(), origarg, PATH_ENV, PREPARE_PARSE_MAIN, proc_options(), process_sflag(), Qfalse, Qnil, Qtrue, Qundef, RARRAY_LEN, RARRAY_PTR, rb_argv, rb_cObject, rb_const_get(), rb_default_internal_encoding(), rb_define_global_function(), rb_define_module(), rb_enc_associate(), rb_enc_find_index(), rb_enc_from_encoding(), rb_enc_from_index(), rb_enc_set_default_external(), rb_enc_set_default_internal(), rb_f_chomp(), rb_f_chop(), rb_f_gsub(), rb_f_sub(), rb_intern, rb_io_flush(), rb_io_write(), rb_iseq_new_main(), rb_locale_encoding(), rb_obj_freeze(), rb_parser_append_print(), rb_parser_compile_string(), rb_parser_dump_tree(), rb_parser_new(), rb_parser_set_yydebug(), rb_parser_while_loop(), rb_progname, rb_realpath_internal(), rb_require(), rb_stdio_set_default_encoding(), rb_stdout, rb_str_dup(), rb_str_new_cstr(), rb_warning(), cmdline_options::req_list, require_libraries(), RSTRING_PTR, ruby_init_loadpath_safe(), ruby_init_prelude(), ruby_set_argv(), ruby_set_script_name(), ruby_show_copyright(), ruby_show_version(), cmdline_options::safe_level, cmdline_options::script, cmdline_options::script_name, cmdline_options::sflag, cmdline_options::src, src_encoding_index, usage(), cmdline_options::verbose, version(), cmdline_options::xflag, and yydebug.
Referenced by ruby_process_options().
| static void process_sflag | ( | int * | sflag | ) | [static] |
Definition at line 573 of file ruby.c.
References args, argv, FALSE, ISALNUM, Qtrue, RARRAY_LEN, RARRAY_PTR, rb_argv, rb_ary_shift(), rb_class_new_instance(), rb_eNameError, rb_exc_raise(), rb_gv_set(), rb_str_cat(), rb_str_cat2(), rb_str_new2, strchr(), StringValuePtr, and TRUE.
Referenced by process_options().
| static void push_include | ( | const char * | path, | |
| VALUE(*)(VALUE) | filter | |||
| ) | [static] |
Definition at line 254 of file ruby.c.
References CharNext, GET_VM, PATH_SEP_CHAR, rb_ary_push(), and rubylib_mangled_path.
Referenced by ruby_push_include().
| static VALUE rb_f_chomp | ( | int | argc, | |
| VALUE * | argv | |||
| ) | [static] |
Definition at line 1289 of file ruby.c.
References rb_funcall_passing_block(), rb_intern, rb_lastline_set(), and uscore_get().
Referenced by process_options().
| static VALUE rb_f_chop | ( | void | ) | [static] |
Definition at line 1269 of file ruby.c.
References rb_funcall_passing_block(), rb_intern, rb_lastline_set(), and uscore_get().
Referenced by process_options().
| static VALUE rb_f_gsub | ( | int | argc, | |
| VALUE * | argv | |||
| ) | [static] |
Definition at line 1251 of file ruby.c.
References rb_funcall_passing_block(), rb_intern, rb_lastline_set(), and uscore_get().
Referenced by process_options().
| static VALUE rb_f_sub | ( | int | argc, | |
| VALUE * | argv | |||
| ) | [static] |
Definition at line 1232 of file ruby.c.
References rb_funcall_passing_block(), rb_intern, rb_lastline_set(), and uscore_get().
Referenced by process_options().
| void* rb_load_file | ( | const char * | fname | ) |
Definition at line 1751 of file ruby.c.
References cmdline_options_init(), load_file(), rb_parser_new(), and rb_str_new_cstr().
| static void require_libraries | ( | VALUE * | req_list | ) | [static] |
Definition at line 537 of file ruby.c.
References CONST_ID, GET_THREAD(), Init_ext(), list, OBJ_FREEZE, rb_thread_struct::parse_in_eval, RARRAY_LEN, rb_ary_shift(), rb_cString, rb_default_external_encoding(), rb_enc_associate(), rb_funcall2(), rb_vm_top_self(), and RBASIC.
Referenced by load_file_internal(), and process_options().
| static VALUE restore_lineno | ( | VALUE | lineno | ) | [static] |
| void ruby_incpush | ( | const char * | path | ) |
Definition at line 336 of file ruby.c.
References locale_path(), and ruby_push_include().
Referenced by init_loadpath().
| void ruby_incpush_expand | ( | const char * | path | ) |
Definition at line 353 of file ruby.c.
References expand_include_path(), and ruby_push_include().
Referenced by proc_options().
| void ruby_init_loadpath | ( | void | ) |
Definition at line 379 of file ruby.c.
References ruby_init_loadpath_safe().
| void ruby_init_loadpath_safe | ( | int | safe_level | ) |
Definition at line 385 of file ruby.c.
References dln_find_file_r(), expand_include_path(), f, fbuf, GET_VM, getenv(), identical_path(), MAXPATHLEN, PATH_ENV, PREFIX_PATH, Qnil, rb_ary_push(), rb_cObject, rb_const_set(), rb_intern_const, rb_ivar_set(), rb_obj_freeze(), rb_realpath_internal(), rb_str_freeze(), rb_str_new(), rb_str_new_cstr(), rb_str_resize(), RSTRING_PTR, ruby_initial_load_paths, ruby_push_include(), RUBY_RELATIVE, rubylib_mangled_path, STRCASECMP, strlcpy(), strlen(), and strrchr().
Referenced by process_options(), and ruby_init_loadpath().
| static void ruby_init_prelude | ( | void | ) | [static] |
Definition at line 1169 of file ruby.c.
References rb_cObject, rb_const_remove(), and rb_intern_const.
Referenced by process_options().
| void* ruby_process_options | ( | int | argc, | |
| char ** | argv | |||
| ) |
Definition at line 1897 of file ruby.c.
References cmdline_options_init(), process_options(), rb_gc_register_mark_object(), rb_progname, rb_str_new4, ruby_script(), and cmdline_options::script_name.
Referenced by ruby_options().
| void ruby_prog_init | ( | void | ) |
Defines built-in variables.
Definition at line 1853 of file ruby.c.
References opt_W_getter(), rb_argv, rb_define_global_const(), rb_define_hooked_variable(), rb_define_variable(), rb_progname, ruby_debug, ruby_verbose, set_arg0(), and verbose_setter().
Referenced by ruby_setup().
| void ruby_push_include | ( | const char * | path, | |
| VALUE(*)(VALUE) | filter | |||
| ) |
Definition at line 316 of file ruby.c.
References push_include().
Referenced by ruby_incpush(), ruby_incpush_expand(), and ruby_init_loadpath_safe().
| void ruby_script | ( | const char * | name | ) |
Sets the current script name to this value.
This is similiar to $0 = name in Ruby level but also affects Method::location and others.
Definition at line 1782 of file ruby.c.
References rb_external_str_new(), rb_progname, rb_vm_set_progname(), and strlen().
Referenced by ruby_process_options().
| void ruby_set_argv | ( | int | argc, | |
| char ** | argv | |||
| ) |
Definition at line 1876 of file ruby.c.
References OBJ_FREEZE, origarg, rb_argv, rb_ary_clear(), rb_ary_push(), and rb_external_str_new_cstr().
Referenced by process_options().
| void ruby_set_script_name | ( | VALUE | name | ) |
Sets the current script name to this value.
Same as ruby_script() but accepts a VALUE.
Definition at line 1795 of file ruby.c.
References rb_progname, rb_str_dup(), and rb_vm_set_progname().
Referenced by load_file_internal(), and process_options().
| void ruby_sysinit | ( | int * | argc, | |
| char *** | argv | |||
| ) |
Initializes the process for ruby(1).
This function assumes this process is ruby(1) and it has just started. Usually programs that embeds CRuby interpreter should not call this function, and should do their own initialization.
Definition at line 1955 of file ruby.c.
References fill_standard_fds(), origarg, and rb_w32_sysinit().
| static void set_arg0 | ( | VALUE | val, | |
| ID | id | |||
| ) | [static] |
Definition at line 1760 of file ruby.c.
References origarg, rb_eRuntimeError, rb_external_str_new(), rb_obj_freeze(), rb_progname, rb_raise(), RSTRING_LEN, RSTRING_PTR, setproctitle(), and StringValue.
Referenced by ruby_prog_init().
| static void set_option_encoding_once | ( | const char * | type, | |
| VALUE * | name, | |||
| const char * | e, | |||
| long | elen | |||
| ) | [static] |
Definition at line 744 of file ruby.c.
References INT2FIX, rb_eRuntimeError, rb_funcall(), rb_intern, rb_raise(), rb_str_new(), RSTRING_PTR, and strlen().
| static rb_env_t* toplevel_context | ( | VALUE | toplevel_binding | ) | [static] |
Definition at line 562 of file ruby.c.
References rb_binding_t::env, env, GetBindingPtr, and GetEnvPtr.
| static void usage | ( | const char * | name, | |
| int | help | |||
| ) | [static] |
Definition at line 135 of file ruby.c.
References DEFAULT_RUBYGEMS_ENABLED, M, numberof, and SHOW.
Referenced by dump_option(), proc_options(), and process_options().
| static VALUE uscore_get | ( | void | ) | [static] |
Definition at line 1209 of file ruby.c.
References NIL_P, rb_eTypeError, rb_lastline_get(), rb_obj_classname(), rb_raise(), RB_TYPE_P, and T_STRING.
Referenced by rb_f_chomp(), rb_f_chop(), rb_f_gsub(), and rb_f_sub().
| static void verbose_setter | ( | VALUE | val, | |
| ID | id, | |||
| void * | data | |||
| ) | [static] |
Definition at line 1829 of file ruby.c.
Referenced by ruby_prog_init().
| int argc |
Definition at line 130 of file ruby.c.
Referenced by callback(), initialize(), moreswitches(), pipe_open(), pipe_open_s(), rb_apply(), rb_f_p_internal(), rb_fiber_start(), rb_iseq_disasm(), rb_marshal_dump(), rb_reg_s_union(), rb_spawn_process(), rb_str_encode(), vm_call0_cfunc_with_frame(), vm_call_cfunc_with_frame(), and vm_callee_setup_arg_complex().
| char** argv |
Definition at line 131 of file ruby.c.
Referenced by asn1time_to_time(), BigMath_s_exp(), BigMath_s_log(), call_original_exit(), call_trace_func(), do_spawn(), fromDefaultEnc_toUTF8(), iseq_build_from_ary_body(), moreswitches(), new_insn_body(), pipe_open(), pipe_open_s(), process_sflag(), rb_check_deadlock(), rb_f_p_internal(), rb_fiber_start(), rb_fiddle_new_function(), rb_marshal_dump(), rb_name_error(), rb_name_error_str(), rb_str_encode(), rb_threadptr_signal_exit(), rb_threadptr_signal_raise(), set_argv(), vm_call_iseq_setup_normal(), vm_call_iseq_setup_tailcall(), and vm_callee_setup_arg_complex().
struct { ... } origarg [static] |
Referenced by process_options(), ruby_set_argv(), ruby_sysinit(), and set_arg0().
| VALUE rb_argv0 |
Definition at line 1191 of file ruby.c.
Referenced by Init_tcltklib(), ruby_open_tk_dll(), ruby_tcl_create_ip_and_stubs_init(), and ruby_tcltk_stubs().
1.6.1