Ruby 2.0.0p247(2013-06-27revision41674)

- Main Page
- Modules
- Data Structures
- Files

- File List
- Globals

Data Structures | Functions | Variables
eval_jump.c File Reference
`#include "eval_intern.h"`
Include dependency graph for eval_jump.c:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

## Data Structures
struct | end_proc_data

## Functions
void | rb_call_end_proc (VALUE data)
static VALUE | rb_f_at_exit (void)
void | rb_set_end_proc (void(*func)(VALUE), VALUE data)
void | rb_mark_end_proc (void)
void | rb_exec_end_proc (void)
void | Init_jump (void)

## Variables
static struct end_proc_data * | end_procs
static struct end_proc_data * | ephemeral_end_procs

## Function Documentation

void Init_jump | ( | void | ) |  |

Definition at line 143 of file eval_jump.c.

References rb_define_global_function(), and rb_f_at_exit().

void rb_call_end_proc | ( | VALUE | data) |  |

Definition at line 11 of file eval_jump.c.

References rb_ary_new(), and rb_proc_call().

Referenced by m_core_set_postexe(), and rb_f_at_exit().

void rb_exec_end_proc | ( | void | ) |  |

Definition at line 97 of file eval_jump.c.

References end_proc_data::data, end_procs, ephemeral_end_procs, rb_thread_struct::errinfo, error_handle(), EXEC_TAG, end_proc_data::func, GET_THREAD(), link(), end_proc_data::next, NIL_P, POP_TAG, PUSH_TAG, rb_safe_level, rb_set_safe_level_force(), end_proc_data::safe, and xfree.

Referenced by ruby_finalize_0().

static VALUE rb_f_at_exit | ( | void | ) |  |
| static

Definition at line 38 of file eval_jump.c.

References rb_block_given_p(), rb_block_proc(), rb_call_end_proc(), rb_eArgError, rb_raise(), and rb_set_end_proc().

Referenced by Init_jump().

void rb_mark_end_proc | ( | void | ) |  |

Definition at line 80 of file eval_jump.c.

References end_proc_data::data, end_procs, ephemeral_end_procs, link(), end_proc_data::next, and rb_gc_mark().

Referenced by gc_marks().

void rb_set_end_proc | ( | void(*)(VALUE) | func,
|  | VALUE | data
| ) |  |

Definition at line 60 of file eval_jump.c.

References ALLOC, end_proc_data::data, end_procs, ephemeral_end_procs, end_proc_data::func, func, GET_THREAD(), link(), list, end_proc_data::next, rb_safe_level, end_proc_data::safe, and rb_thread_struct::top_wrapper.

Referenced by Init_curses(), Init_tcltklib(), m_core_set_postexe(), and rb_f_at_exit().

## Variable Documentation

struct end_proc_data* end_procs
| static

Definition at line 57 of file eval_jump.c.

Referenced by rb_exec_end_proc(), rb_mark_end_proc(), and rb_set_end_proc().

struct end_proc_data * ephemeral_end_procs
| static

Definition at line 57 of file eval_jump.c.

Referenced by rb_exec_end_proc(), rb_mark_end_proc(), and rb_set_end_proc().