Пример #1
0
static void run()
{
    VALUE stack_start;
    VALUE code;
    void Init_stack _((VALUE*));

    Init_stack(&stack_start);
    code = compile(eruby_filename);
    if (eruby_sync) {
	print_headers(-1);
    }
    else {
	replace_stdout();
    }
    code = eval(code, eruby_filename);
    if (eruby_mode == MODE_FILTER &&
	(RTEST(ruby_debug) || RTEST(ruby_verbose))) {
	print_generated_code(stderr, code, 0);
    }
    rb_exec_end_proc();
    if (!eruby_sync) {
	flush_buffer();
    }
    ruby_finalize();
}
Пример #2
0
static void
ruby_finalize_0(void)
{
    PUSH_TAG();
    if (EXEC_TAG() == 0) {
	rb_trap_exit();
    }
    POP_TAG();
    rb_exec_end_proc();
    rb_clear_trace_func();
}
Пример #3
0
static void
ruby_finalize_0(void)
{
    rb_trap_exit();
    rb_exec_end_proc();
}