Class: HISTORY
Relationships & Source Files | |
Super Chains via Extension / Inclusion / Inheritance | |
Class Chain:
self,
Enumerable
|
|
Inherits: | Object |
Defined in: | ext/readline/readline.c |
Class Attribute Summary
- .empty? ⇒ Boolean readonly
Class Method Summary
- .<<(str)
- .[](index)
- .[]=(index, str)
- .clear
- .delete_at(index)
- .each
- .length (also: .size)
- .pop
- .push(*args)
- .shift
-
.size
Alias for .length.
- .to_s
Class Attribute Details
.empty? ⇒ Boolean
(readonly)
[ GitHub ]
# File 'ext/readline/readline.c', line 1839
static VALUE hist_empty_p(VALUE self) { return history_length == 0 ? Qtrue : Qfalse; }
Class Method Details
.<<(str)
[ GitHub ]# File 'ext/readline/readline.c', line 1753
static VALUE hist_push(VALUE self, VALUE str) { OutputStringValue(str); add_history(RSTRING_PTR(str)); return self; }
.[](index)
[ GitHub ]# File 'ext/readline/readline.c', line 1710
static VALUE hist_get(VALUE self, VALUE index) { HIST_ENTRY *entry = NULL; int i; i = NUM2INT(index); if (i < 0) { i += history_length; } if (i >= 0) { entry = history_get(history_get_offset_func(i)); } if (entry == NULL) { rb_raise(rb_eIndexError, "invalid index"); } return rb_locale_str_new_cstr(entry->line); }
.[]=(index, str)
[ GitHub ]# File 'ext/readline/readline.c', line 1730
static VALUE hist_set(VALUE self, VALUE index, VALUE str) { HIST_ENTRY *entry = NULL; int i; i = NUM2INT(index); OutputStringValue(str); if (i < 0) { i += history_length; } if (i >= 0) { entry = replace_history_entry(history_replace_offset_func(i), RSTRING_PTR(str), NULL); } if (entry == NULL) { rb_raise(rb_eIndexError, "invalid index"); } return str; }
.clear
[ GitHub ]# File 'ext/readline/readline.c', line 1860
static VALUE hist_clear(VALUE self) { clear_history(); return self; }
.delete_at(index)
[ GitHub ]# File 'ext/readline/readline.c', line 1845
static VALUE hist_delete_at(VALUE self, VALUE index) { int i; i = NUM2INT(index); if (i < 0) i += history_length; if (i < 0 || i > history_length - 1) { rb_raise(rb_eIndexError, "invalid index"); } return rb_remove_history(i); }
.each
[ GitHub ]# File 'ext/readline/readline.c', line 1816
static VALUE hist_each(VALUE self) { HIST_ENTRY *entry; int i; RETURN_ENUMERATOR(self, 0, 0); for (i = 0; i < history_length; i++) { entry = history_get(history_get_offset_func(i)); if (entry == NULL) break; rb_yield(rb_locale_str_new_cstr(entry->line)); } return self; }
.length Also known as: .size
[ GitHub ]# File 'ext/readline/readline.c', line 1833
static VALUE hist_length(VALUE self) { return INT2NUM(history_length); }
.pop
[ GitHub ]# File 'ext/readline/readline.c', line 1796
static VALUE hist_pop(VALUE self) { if (history_length > 0) { return rb_remove_history(history_length - 1); } else { return Qnil; } }
.push(*args)
[ GitHub ]# File 'ext/readline/readline.c', line 1761
static VALUE hist_push_method(int argc, VALUE *argv, VALUE self) { VALUE str; while (argc--) { str = *argv++; OutputStringValue(str); add_history(RSTRING_PTR(str)); } return self; }
.shift
[ GitHub ]# File 'ext/readline/readline.c', line 1806
static VALUE hist_shift(VALUE self) { if (history_length > 0) { return rb_remove_history(0); } else { return Qnil; } }
.size
Alias for .length.
.to_s
[ GitHub ]# File 'ext/readline/readline.c', line 1692
static VALUE hist_to_s(VALUE self) { return rb_str_new_cstr("HISTORY"); }