Руководство по ruby

Здесь вы найдете отсылки к руководствам, урокам и ссылкам, которые могут
быть полезны, если вы почувствуете, что хотите программировать на Ruby.

Установка Ruby

Если вы хотите попробовать Ruby не только в браузере (смотрите ссылки ниже),
но и локально – вам нужно установить Ruby на ваш компьютер.
Вы можете проверить, установлен ли Ruby на ваш компьютер, набрав в терминале

ruby -v

Это должно вывести некоторую информацию об установленной версии Ruby.
Если нет, смотрите страницу установки с различными
способами получить Ruby.

С чего начать

Try Ruby!
Интерактивное введение, которое даст вам возможность попробовать Ruby
прямо в вашем браузере. 15-ти минутная вводная часть нацелена на
начинающих, кто хочет почувствовать возможности языка.
Ruby Koans
Данный ресурс поведет вас по пути просвещения к знаниям о Ruby. Цель
ресурса – изучить язык Ruby, его синтаксис, структуру и несколько
стандартных функций и библиотек. Так же он обучит вас культуре.
Why’s (Poignant) Guide to Ruby
Необычная, но интересная книга, которая научит вас Ruby посредством
историй, шуток и комиксов. Созданное программистом why the lucky stiff,
данное руководство является классикой для изучения Ruby.
Ruby за двадцать минут
Неплохое введение, покрывающее основы Ruby. Прохождение его от начала
до конца не должно занять у вас более двадцати минут.
В Ruby из других языков
Пришли в мир Ruby из другого языка? Будь это C, C++, Java, Perl, PHP
или Python – этот раздел вам поможет!
Ruby Essentials
Бесплатная онлайн-книга, предоставляющая краткое и легкое руководство
для изучения Ruby.
Learn to Program
Замечательное маленькое руководство от Chris Pine для новичков в
программировании. Если вы не знаете как программировать — начните
отсюда.
Learn Ruby the Hard Way
Отличный набор упражнений с объяснениями, который поможет вам пройти
путь от абсолютно базовых понятий Ruby до ООП и веб-разработки.

Руководства

Programming Ruby
Основополагающая работа по Ruby на английском в первом издании,
книга от Pragmatic Programmers, доступна бесплатно онлайн.
The Ruby Programming Wikibook
Бесплатное онлайн-руководство для начинающих и продвинутых, плюс
полная документация языка.

Документация языка

Ruby Core Reference
Полученная прямиком из исходного кода при помощи RDoc, эта
документация охватывает все классы и модули ядра (такие как String,
Array, Symbol и так далее).
Ruby Standard Library Reference
Так же полученная прямо из исходного кода при помощи RDoc, эта
документация охватывает стандартные библиотеки.
RubyDoc.info
Веб-сайт содержащий в себе документацию о гемах Ruby и Ruby проектах,
расположенных на GitHub.
Ruby & Rails Searchable API Docs
Rails и Ruby документация с умным поиском.
APIdock
Ruby, Rails и RSpec документация с комментариями и заметками
пользователей.
RubyAPI.org
Легко находите и просматривайте классы, модули и методы Ruby.

Редакторы и среды разработки

Для программирования на Ruby вы можете использовать стандартный
редактор вашей операционной системы. Кстати, для более эффективного
написания кода, стоит использовать редактор с поддержкой Ruby (например,
подсветка синтаксиса, просмотр файлов) или среду разработки с
продвинутыми функциями (например, code completion, рефакторинг,
поддержка тестирования).

Далее следует список популярных инструментов, используемых рубистами:

  • Инструменты для Linux и кросс-платформенные инструменты:
    • Aptana Studio
    • Emacs с Ruby режимом и Rsense
    • Geany
    • gedit
    • Vim с vim-ruby плагином и Rsense
    • RubyMine
    • SciTe
    • NetBeans
    • Sublime Text
  • На Windows:
    • Notepad++
    • E-TextEditor
    • Ruby In Steel
  • На macOS:
    • TextMate
    • BBEdit

Дальнейшее чтение

Ruby-Doc.org поддерживает актуальный список англоязычных источников.
Если у вас есть
вопросы по Ruby, почтовая рассылка – отличное место их задать.

��������: sophtanet.com

Ruby — «������� ��������- ���������������
����». ������� ��� ����� ���������� ��������� ��������, �� �� ���
������������� ����� �������, ����� ��������� ��
Ruby ���� ����� � ������ � ������. ��� �����������
������������
������� ��� ��������� ��������� � ������������
Ruby, � ����� ���� ��� ��������� ������� Ruby, ������� �� ������ � �� ��������,
��������
Reference Manual.

����������

������� ���������

  • ������������ ������ ��
    �������� ����� — matz.
  • ��������������
    ������� �� ���������� — GOTO Kentaro
    & Julian Fondren.
  • ���������� ������� �
    ������������� — Mark Slagell. 
    Date stamp ��� ������ ������ — 20010216.
  • Akinori Musha, Laurent
    Julliard, Manpreet Singh � Robert Gustavsson ������� � �������������
    ������ � ���������� �������������� � �������������. �������!
  • ������� �� ������� — Alexander Miatchkov  (���������
    ������) � ���������� Mark Slagell.

Back to top

Ruby — ����������� ������������

��� ����� Ruby?

Ruby — ��� «���������������� ���������� ���� ��� �������� � ��������
��������-���������������� ����������������». ��� �� ��� �������?

���������������� ���������� ����:

  • ����������� �������
    ������������� ��������� �������
  • ������ ��������� �������� ��
    �������� � ����������� �����������
  • ����������� �������� ����� ��
    ����� ����������

������� � ������� ����������������:

  • ���������� �������������
    ���������� ����������
  • ���������� �� ������������
  • ������� � ����������������
    �������
  • �������������� ����������
    �������

�������� — ��������������� ����������������:

  • ��� �������� ��������
  • ������, ������������, ������
    � �.�.
  • singleton- ������
  • mixin ��� ������ �������
  • ��������� � ���������
    ��������

� �����:

  • ����� ����� � ���������
    ������������
  • ������ ���������
    �������������� ��������
  • ������������ ��������
  • ������

���� �� �� ����� ������� � ��������������� ���� ���������� — �� �����������
� ������� ������.   ������ Ruby — ������ � ������.

top
Back to top

Ruby — ����������� ������������

�������!

��� ������ �� �������� ���������, ���������� �� � ��� Ruby.  �����
������� ��������� � ��������� ������ (�� ��������� ����� ��� «%«, ���
��� %
�������� �� ����), �������

 
% ruby -v

(-v
���� �������� ��������������� ������� ��� ������), ����� ������� ������ Enter
���� Ruby ����������, �� ������� ����� ������� ��:

 
% ruby -v
ruby 1.6.1 (2000-09-27) [i586-linux]

���� Ruby �� ����������, �� ������ ��������� ������ ��������������
���������� ��� ��� ������� ��� ���� , ��������� Ruby
�������� ��������� �� ��� ����������� �� ����������� � �������������.

������ ������� �������� � Ruby.  �� ������ ������ ��� ��������� ����� �
��������� ������, ��������� �������� -e:

 
% ruby -e 'print "hello world\n"'
hello world

����� ������� �������� ���������� ��������� � �����.

 
% cat > test.rb
print "hello world\n"
^D
% cat test.rb
print "hello world\n"
% ruby test.rb
hello world

^D
— ��� ���������� control-D.  ��������������� ����� ���
UNIX.  ��� ������������� DOS, ���������� ���:

 
C:\ruby> copy con: test.rb
print "hello world\n"
^Z
C:\ruby> type test.rb
print "hello world\n"
C:\ruby> ruby test.rb
hello world

��� ��������� ����� �������� ����, ��� ����, ��, ������ �����, ��������
������������ ��������� ��������� ��������.

��������� �� ��������� ������� � �������� ���� ����� ���� ������� � �������
����������� ��������, ����������� � ��������� ������.  ��������, ���
��������� �������� ������ foo
������� bar
�� ���� ���������� �� C � � �����-������ � ������� ������� ��������, �����
��������� ����� �������������� ������ � ������ � ����������� «.bak» �
����� ��������:

 
% ruby -i.bak -pe 'sub "foo", "bar"' *.[ch]

� ��� ��������� �������� ��� ������� cat � UNIX (�� �������� ���������, ���
cat):

 
% ruby -pe 0 file

top
Back to top

Ruby — ����������� ������������

������� �������

������� ������� ������� ��� ���������� ����������.  ��������������
����������� ���������� �� n
���������:

 
n! = 1                (n==0)
   = n * (n-1)!       (�����)

�� Ruby ��� ����� ���� �������� ���:

 
def fact(n)
  if n == 0
    1
  else
    n * fact(n-1)
  end
end

�� ������ �������� ���������� � ��������� end.  Ruby ��-�� ����� ��������
«Algol-like».  (�� ����� ����, ������� Ruby ����� ���������
������� ����� ��� ��������� Eiffel.) �� ����� ������ �������� ����������
��������� return
� ��� ��� �������������, ��������� ������� � Ruby ���������� ��������� �����������
� ��� ��������.  ������������� ��������� return ���������, ��
����������� �� ��������.

������ ������� �������� ���� ������� ���������� ����������.  ����������
����� ������� ���� ���� ��� ������� ���������:

 
��������� ��� ���������� ���������� �� �����
# �������� �� � ���� fact.rb
 
def fact(n)
  if n == 0
    1
  else
    n * fact(n-1)
  end
end
 
print fact(ARGV[0].to_i), "\n"

ARGV
����� — ��� ������, ���������� ��������� �� ��������� ������, � to_i
����������� ������ �������� � ��������� �������������.

 
% ruby fact.rb 1
1
% ruby fact.rb 5
120

����� �� ��������� �������� ��� ���������, ������� 40? ��� ������� ��
������������ ��� ����������� �� ������������…

 
% ruby fact.rb 40
815915283247897734345611269596115894272000000000

��������.  �� ����� ����, Ruby ����� ����������� � ������ ������
�������, ������������ ��������� ������ ����� ������. ��� ��� � 400! ����� ����
��������:

 
% ruby fact.rb 400
64034522846623895262347970319503005850702583026002959458684
44594280239716918683143627847864746326467629435057503585681
08482981628835174352289619886468029979373416541508381624264
61942352307046244325015114448670890662773914918117331955996
44070954967134529047702032243491121079759328079510154537266
72516278778900093497637657103263503315339653498683868313393
52024373788157786791506311858702618270169819740062983025308
59129834616227230455833952075961150530223608681043329725519
48526744322324386699484224042325998055516106359423769613992 
31917134063858996537970147827206606320217379472010321356624 
61380907794230459736069956759583609615871512991382228657857 
95493616176544804532220078258184008484364155912294542753848 
03558374518022675900061399560145595206127211192918105032491 
00800000000000000000000000000000000000000000000000000000000 
0000000000000000000000000000000000000000000

�� �� ����� ��������� ��������� ������������ ����������, ��, ������ ����, ��
����������. :-)

���� ����/���������

����� �� ���������� Ruby ��� ����������, �� ��������� ������� ��
������������ ���������� ����� � ��������� �� �� ��������� �����:

 
% ruby
print "hello world\n"
print "good-bye world\n"
^D
hello world
good-bye world

Ruby ����� ������������ � ���������� ��� ��������� eval.rb,
������� ��������� ������� ��� �� Ruby � ���������� � ������������� �����,
��������� �� ���� ���� ���������� ��� ���������.  ��� ����� ������
�������������� �� ����� ����������.

���� � ��� ANSI-����������� �������� (��� ��������� ��� � ����, ���� ��
��������� �� �����-���� �� ������ UNIX, � DOS ��� ����������� �������������
�������� ANSI.SYS
��� ANSI.COM),
��� ����� ������������ ����������� eval.rb,
������� ��������� ���������� ������ � ����������� ��������, ������
��������������, ������������ ��������� ����������.  � ���� ������ ����� �
�������� sample
� �������� ���������� ������������ ������ ��� ��������� ANSI. ��� ��������
������ ������ ������ � eval.rb:

 
% ruby eval.rb
ruby> print "Hello, world.\n"
Hello, world.
   nil
ruby> exit

hello world
��������� �������� print
��������� ������, � ������ ������ nil, �������� � ����������� ����������
��������� �������; Ruby �� ������ �������� ����� ���������� and ����������,
��� ��� ��������� ����� ���� ������ �������� �� �� �����, ��� � ���
����������.  � ������ ������, nil ����������, ��� print ��
������ �������� ������������� ��������.  ��������, ��� �� ���������������
����� ����� ��� ������ ������� exit, ���� ^D ���� ��������.

����� � ���� ����������� «ruby>» �������� �����������
��� ����� ����� ��������� �������� ���������� eval.rb.

top
Back to top

Ruby — ����������� ������������

������

Ruby �������� ��� � �������, ��� � �� ��������.  ������ ����� ����
��������� � ������� («…») ��� ��������� (‘…’) �������.

 
ruby> "abc"
   "abc"
ruby> 'abc'
   "abc"

������� � ��������� ������� � ��������� ������� ���������� ������
������.  ������ � ������� �������� ��������� ������������� �������� �����
����������� ��������� �����, � ����� ���������� ��������� ��������� ��� �������������
#{}
������ � ��������� �������� �� ���������� ����� �������������; ��� �����, �� �
��������.  �������:

 
ruby> print "a\nb\nc","\n"
a
b
c
   nil
ruby> print 'a\nb\nc',"\n"
a\nb\nc
   nil
ruby> "\n"
   "\n"
ruby> '\n'
   "\\n"
ruby> "\001"
   "\001"
ruby> '\001'
   "\\001"
ruby> "abcd #{5*3} efg"
   "abcd 15 efg"
ruby> var = " abc "
   " abc "
ruby> "1234#{var}5678"
   "1234 abc 5678"

������������ �� �������� � Ruby ����� ����� � �����������, ��� � �. 
��������, �� ������ ��������� ������ ��� ������ +, ��� ��������� ������
��������� ��� ��� ������ *:

 
ruby> "foo" + "bar"
   "foobar"
ruby> "foo" * 2
   "foofoo"

����������� ����� �� � ������� ����� ���������, ��������� ��� ������� ������
���������� �������:

 
char *s = malloc(strlen(s1)+strlen(s2)+1);
strcpy(s, s1);
strcat(s, s2);
/* ... */
free(s);

� ��� ��� ������������� Ruby ��� �� ���������� �������������� ���, �������
�������� ������.  �� ������ ����������� �� ���������� �������.

��� ��� ��������� ������� ����, ��� ����� ������ �� ��������.

�����������:

 
ruby> word = "fo" + "o"
   "foo"

����������:

 
ruby> word = word * 2
   "foofoo"

���������� �������� (��������, ��� ������� � Ruby �������� ������ �������)

 
ruby> word[0]
   102            # 102 is ASCII code of `f' 
ruby> word[-1]
   111            # 111 is ASCII code of `o'

(������������� ������ �������� ������ �� � ������, � � ����� ������)

��������� ��������:

 
ruby> herb = "parsley"
   "parsley"
ruby> herb[0,1]
   "p"
ruby> herb[-2,2]
   "ey"
ruby> herb[0..3]
   "pars"
ruby> herb[-5..-2]
   "rsle"

�������� �� ���������:

 
ruby> "foo" == "foo"
   true
ruby> "foo" == "bar"
   false

���������: � Ruby 1.0 ����������� ���� ���������� ������������ � �������
��������, �.�. TRUE.

� ������ ��������� ��������� �� ���� ������� � ������.  ��� ����� ����
«������ �����», ���� �����, ��������, ������ �������� �������������
��� ����� ������� ;-)

 
# ��������� � ���� guess.rb
words = ['foobar', 'baz', 'quux']
secret = words[rand(3)]
 
print "guess? "
while guess = STDIN.gets
  guess.chop!
  if guess == secret
    print "You win!\n"
    break
  else
    print "Sorry, you lose.\n"
  end
  print "guess? "
end
print "The word was ", secret, ".\n"

�� ��������� ���� ��� ������� ����� �������� �� ������ ���� ���������. ���
��� �������� ����� �����:

 
% ruby guess.rb
guess? foobar
Sorry, you lose.
guess? quux
Sorry, you lose.
guess? ^D
The word was baz.

(� ������ ����������� ������ 1/3, ����� �� ���� � �����)

top
Back to top

Ruby — ����������� ������������

���������� ���������

�������-�� ���������� ����� ���������� ���������.  �� ���� ��� �� �����
���������, ������������� �� ������ ���������� ������ �������, ������� �� �����
�������� ��������.

��� ��������� �� �������� � �� ���������, ������� ����� ����������� ��������
��� ������������� � ��������:

[]

������� ��������� (�.�., [a-z] �������� ����� �
�������� �� a
�� z)

\w

����� ���� �����; �� ��, ��� � [0-9A-Za-z]

\W

�� �����, �� �����

\s

������ �������; �� ��, ��� � [ \t\n\r\f]

\S

�� ������

\d

������ �����; �� ��, ��� � [0-9]

\D

�� �����

\b

����� (0x08) (������ ���� � �������� ��������� ���������)

\b

������� ����� (������ ���� � �������� ��������� ���������)

\B

�� ������� �����

*

���� ��� ����� ���������� �����������

+

���� ��� ����� ���������� �����������

{m,n}

������� m � �������� n ���������� �����������

?

�� ����� ������ ���������� �����������; �� �� �����, ��� �{0,1}

|

���������� ����������� ���� ������������ �������

()

�����������

������������ ������ ��� ��������, ������� ���������� ���� �������� ���������
���������� ���������.  � Ruby, ��� � � Perl, ��� ������
���������� ������� �������, � �� �������� ���������. ���� �� ������� ������ ��
�������� � ����������� �����������, ��� ������� ������ ������, ������ �� �����������;
��� �� ����� ���� �� ����� ��������� ��������� ���������� ������� �� �������
���������� � ����.  ��� ���� ������� � ������������� ����, �������
��������� ��� �� �������� ���� (� ��������� ������ ����� ����) � ��� �������,
����� ���������� ���������� ����������� ������������ �������, ����� � ������
����������� ��� ���������� ��������.

�����, ��������, �� ����� ���������, ������������� �� ������ ����������
��������: «���������� � f � ������ ��������, ����� �� ��� ������� ����� �
������� ��������, ����� ��� ������, ��� �������, ��� ����� � ������ ��������
�����������.»  ���� �� ������� ����������� �� �, �� �� ���, ��������,
�������� � ����� ������ �������� ������ ����� ����, ���??  ��������, ���
���� �� ������� ���.  �� � Ruby ��� ����� ����� ���� ���� ������ ��
������������ ������ ����������� ��������� /^f[A-Z][^a-z]*$/.

� ��� ������ «�������� ����������������� �����, ����������� � �������
������?»   ����������:

 
ruby> def chab (s)   # "contains hex in angle brackets"
    |    (s =~ /<0[Xx][\dA-Fa-f]+>/) != nil
    | end
  nil
ruby> chab "Not this one."
  false
ruby> chab "Maybe this? {0x35}"    # wrong kind of brackets
  false
ruby> chab "Or this? <0x38z7e>"    # bogus hex digit
  false
ruby> chab "Okay, this: <0xfc0004>."
  true

���� ���������� ��������� ����� � ������� ������� �������� ����������,
�����������, �� ������ ������� �������� �������������� �� �����������
���������� ����� ��������.

��� ��������� ���������, ����� ������ ��� �������������������� � �����������
�����������.  �������� �� ��� regx.rb � ��������� �������� "ruby regx.rb"
� ��������� ������.

 
# ��������� �������� � ���������� ANSI !
 
st = "\033[7m"
en = "\033[m"
 
while TRUE
  print "str> "
  STDOUT.flush
  str = gets
  break if not str
  str.chop!
  print "pat> "
  STDOUT.flush
  re = gets
  break if not re
  re.chop!
  str.gsub! re, "#{st}\\&#{en}"
  print str, "\n"
end
print "\n"

����� ������ 2 ������ — � ������ ������ ����������� ������, � �� ������
���������� ���������, �� ������������ �������� � ����������� ������. 
����� �������� ������ ��������� �� �����, ������ ��� �� ��������� �����
���������� � ��������� ������.  �� ��������� ���� ������ �������� ������,
����� ����� ���������� ������ ����� ����.

 
str> foobar
pat> ^fo+
foobar
~~~

��, ��� ���� ������� �������, �� ������ �������� ��� ���������������.
«~~~~~» ��� ���, ��� ���������� ��������� � ��������� ������.

������� ��������� ������ ���������.

 
str> abc012dbcd555
pat> \d
abc012dbcd555
   ~~~    ~~~

���� ��, ��� ������� ���������, ��� ��� �������� ��������������, ��
���������� ����������� �� ������� ������ ���� ��������: \d �� ������
�������� ��������� � ������� d, ������ ����� �� �������� ��������� �����.

� ���, ���� ������� ��������� �������� ������������� ��������, �������������
��������?

 
str> foozboozer
pat> f.*z
foozboozer
~~~~~~~~

foozbooz
������ ��� ���������� ������ fooz, ��������� ���������� ��������� ��������
����������� ������� ������, ��������������� �������.

��� ��������, ������, ����������� ��������� ���� «�����», ������
�������� ��� ���������� ������������ ���������.

 
str> Wed Feb  7 08:58:04 JST 1996
pat> [0-9]+:[0-9]+(:[0-9]+)?
Wed Feb  7 08:58:04 JST 1996
           ~~~~~~~~

«=~»
��� �������� ���������� ��������� �� �������; �� ���������� ������� � ������,
������� � ������� ������� ����������, ��� nil � ������, ���� ������� �� �������.

 
ruby> "abcdef" =~ /d/
   3
ruby> "aaaaaa" =~ /d/
   nil

top
Back to top

Ruby — ����������� ������������

�������

�� ������ ������� ������, ���������� ��������� ��� ��������� �
���������� ������� ([])
� �������� �� �������. ������� � Ruby ����� �������� � ���� �������� ������
�����.

 
ruby> ary = [1, 2, "3"]
   [1, 2, "3"]

������ ����� ���� ��������� ��� ���������� ����� ��� ��, ��� � ������.

 
ruby> ary + ["foo", "bar"]
   [1, 2, "3", "foo", "bar"]
ruby> ary * 2
   [1, 2, "3", 1, 2, "3"]

�� ����� ������������ ������� ��� ����, ����� ��������� �� ����� ����� �������.

 
ruby> ary[0]
   1
ruby> ary[0,2]
   [1, 2]
ruby> ary[0..1]
   [1, 2]
ruby> ary[-2]
   2
ruby> ary[-2,2]
   [2, "3"]
ruby> ary[-2..-1]
   [2, "3"]

(������������� ������� ���������� ������������� �������� ������ � �� �
������ �������, � � �����.)

������� ����� ���� ������������� � ������ � �� �����, ��������� joinsplit
��������������:

 
ruby> str = ary.join(":")
   "1:2:3"
ruby> str.split(":")
   ["1", "2", "3"]

����

������������� ������ ����� ��������, ������ � ������� �������������� �� ��
����������� ������ (�������), � �� ����� keys, ������� ����� ����
��������� ������ ����.  ����� ������� ������ �������� ��� ��� �������;
� ���� Ruby ������������ �������� ���.  ��� ����� ���� ������
����� ������������ ��� � ������� ������� ({}).  ��� ������ ����-���� � ����
������������ ����, ��� ��� ���� �� �� ������������ ������ ��� ������ � �
�������.

 
ruby> h = {1 => 2, "2" => "4"}
   {1=>2, "2"=>"4"}
ruby> h[1]
   2
ruby> h["2"]
   "4"
ruby> h[5]
   nil
ruby> h[5] = 10     # ��������� ��������
   10
ruby> h
   {5=>10, 1=>2, "2"=>"4"}
ruby> h[1] = nil    # �������� ��������
   nil
ruby> h[1]
   nil
ruby> h
   {5=>10, "2"=>"4"}

top
Back to top

Ruby — ����������� ������������

����� � �������
��������

������� ������ ���������� ��� ��������� ��������, ���������� ����.  
��� ������ �� �� ���� �������� ����� ������������ ������ �����.

���������

���� ������ ��� ����������� � ����� «�������
�������».

 
01  def fact(n)
02    if n == 0
03      1
04    else
05      n * fact(n-1)
06    end
07  end
08  print fact(ARGV[0].to_i), "\n"

��������� ��� ������ ������������, �� �������������� �������� ������ ������.

 
01  def fact(n)

� ������ ������ def
— ��� ��������, ������������ ��� ����������� ������� (���, ������, ������;
� ���, ��� ����� �����, �� ��������� � ����������� ������). 
����� �� ����������, ��� ������� fact ���������� ���� ��������,
������������ ��� n.

 
02    if n == 0

if
������������� ��� �������� �������. ���� ������� �����������, �� ��������������
��������� ������; ����� ����������� ��, ��� ������� �� else.

 
03      1

��������, ������������ if,
����� 1, ���� ������� �����������.

 
04    else

���� ������� �� �����������, �� ����������� ���� ���� ������ �� end.

 
05      n * fact(n-1)

���� ������� �� �����������, �� ����������� if ����� ��������, ������ n ����������
�� fact(n-1).

 
06    end

������ "end"
��������� �������� if.

 
07  end

������ "end"
��������� �������� def.

 
08  print fact(ARGV[0].to_i), "\n"

� ���� ������ ���������� ����� ������� fact() � ��������� � ��� ��������,
������������� � ��������� ������, ����� ��������� ���������.

ARGV
— ��� ������, ���������� ���������, ���������� � ��������� ������. ���������� ARGV ��������
������, ��� ��� �� ������ �������� �� � ����� ������, ��������� to_i
Ruby, � ������� �� Perl, �� ����������� ������������� ������ � �����.

����… � ��� ����������, ���� �� ������� ��������� � �������� ���������
������������� �����?  ������ ��������?  � ������� ���������?

������

������ �� ���������� ���������-���� �� �����, ����������� �������.

 
01  words = ['foobar', 'baz', 'quux']
02  secret = words[rand(3)]
03
04  print "guess? "
05  while guess = STDIN.gets
06    guess.chop!
07    if guess == secret
08      print "you win\n"
09      break
10    else
11      print "you lose.\n"
12    end
13    print "guess? "
14  end
15  print "the word is ", secret, ".\n"

� ���� ��������� ������������ ����� ����������� ��������� while
���������� ���� ����� while
� ��������������� end
���� ����������� �� ��� ���, ���� ��������� �������� ������� ����� ����������
������.

rand(3)
� ������ 2 ���������� ��������� �������� � ��������� �� 0 �� 2
������������.  ��� ��������� �������� ������������ ��� ����������� ������
�� ��������� ������� words.

� ������ 5 �� ��������� ���� ������ �� �� ������������ ����� ��� ������
������ STDIN.gets
���� �������� EOF (end of file — ����� �����) �� ����� ����������, gets
���������� nil
����� �������, ���������� ����� ������ while ������������ �� ��� ���, ���� ��
�������� ^D (��� ^Z � DOS), ���������� ����� �����.

guess.chop!
� ������ 6 ������� ��������� ������ �� guess; � ����� ������ ��� ������ �����
������ newline (����� ������).

� ������ 15 �� ������� ���������� �����.  �� �������� ��� � ����
��������� print � ����� ����������� (������� ��������� ���� �� ������), �� ����
�� ��� �� ���������� �������� ��� � ����� ����������, ������� ����� secret � ���� #{secret}
����� ���� ���������� ��, ��� ��� ����������, ������ ������� ������ ����
������������ �� ��������, � �� ������ ������ �������� ��� ������:

 
print "the word is #{secret}.\n" 

���������� ���������

� ����� ������ ���������� ��������� �� ����� regular
expressions.

 
01  st = "\033[7m"
02  en = "\033[m"
03
04  while TRUE
05    print "str> "
06    STDOUT.flush
07    str = gets
08    break if not str
09    str.chop!
10    print "pat> "
11    STDOUT.flush
12    re = gets
13    break if not re
14    re.chop!
15    str.gsub! re, "#{st}\\&#{en}"
16    print str, "\n"
17  end
18  print "\n"

� ������ 4 ������ ������� � while ������ ������ �������� true, ��� ���
��������� �����, ���������� ��� ����������� ����. ��� �� �����, �� ���������
�������� break
� 8 � 13 ������ ��� ����������� ����������� ������ �� �����.  ��� ��� break �����
�������� ��������� ������������� ��������� if.  «if-�����������»
��������� ���������� ���� ����� �� ���� ����� � ������ �����, ����� ��������
������� �����������.

���������� �� ������ chop!
(��. ������ 9 � 14).  � Ruby �� ������ ��������� ‘!‘ ��� ‘?‘ � �����
�������� ������������ �������.  ��������������� ���� (!, ������
����������� ��� «bang!») �������� ����� ������������ �������������, ��
���� �����, ��������� �������� �������� ����, ��� ��� ��� ��������. chop! �����
������������ �� �������� ������, �� chop ��� ���������������� �����
�������� � ������.  ���� ����������������� ��� ��������.

 
ruby> s1 = "forth"
  "forth"
ruby> s1.chop!       # ���������� s1.
  "fort"
ruby> s2 = s1.chop   # ���������� ����� �������������� s2,
  "for"
ruby> s1             # ... ��� ����������� �� s1.
  "fort"

������� �� ����������� � ������� �������, ��������������� �� ��������������
���� (?,
������ ������������ ��� «huh?»); ��� �������� ����������� �����,
������� ����� ���������� true
���� false.

������ 15 ���������� ������� ������ ��������.  ��-������, ��������
������� ��� ������ ��� ����������� �������������� ������ gsub!
�� �������� � str
��� ���������� ��� ������ re
������������������ (sub
�������� ������ — substitute, � ���������� g �������� ����������, �.�.,
����������� ��� ���������� ����� ������, � �� ������ ������
���������).  ��� ������, ��� �����; �� ��� �� �� �������� ��������� �����
������? st
en
���� ���������� ANSI-������������������ ��� �������������� ������ � ����������
��� � �������� ���� ��������������.  � ������ 15 ��� ��������� � #{} ���
����������� ����, ��� ��� ����� ����������������� ������ ����� ������� (� �� ��
����� ����������� ���������� ����� ����������).  ����� ���� ��
����� «\\&«. 
��������� ��������. ��������� ������, � ������� ������������ ������, ���������
� ������� ��������, �� ���� �������� ������ ����� ������������������ ��� ����
�������� ����; ��, ��� gsub!
������� �� ����� ����, ����� ��������� ��� «\&«, � ��� �����������
������ �����, ������� ��������� �� ������, �������� ��� ������.  �����
�������, ����� ������ ��� ������ ����� ��������� ����� ��� ��, ��� � ������, ��
����������� ����, ��� ������, ��������� � ��������, ����� �������� � ���������
����.

top
Back to top

Ruby — ����������� ������������

�����������
���������

� ���� ����� ����� ��������� ��������������� ����������� ��������� Ruby.

case

�� ���������� �������� case
��� �������� ������������������ �������.  ��� �������� ������ �� �������� switch � C �
Java, �� �� ��������� � ���, ��� �� ������ �����, ����� ������.

 
ruby> i=8
ruby> case i
    | when 1, 2..5
    |   print "1..5\n"
    | when 6..10
    |   print "6..10\n"
    | end
6..10
   nil

2..5
— ��� ���������, ������� �������� �������� ����� 2 � 5
������������.  ��������� ��������� �������� �������� �� ��������� ��������
i
� ��������:

 
(2..5) === i

case
������ ���������� �������� ��������� === ��� �������� ���������� ������� ��
���.  ������������� ��������-��������������� ������� Ruby, ===
���������������� �������������� �������, ������������ � ������� when.  ��������,
��������� ��� ��������� ������ �� ��������� � ������ when, �
������������ ����������� ��������� �� ������ when.

 
ruby> case 'abcdef'
    | when 'aaa', 'bbb'
    |   print "aaa or bbb\n"
    | when /def/
    |   print "includes /def/\n"
    | end
includes /def/
   nil

while

Ruby ���� ����������� � ��������� ��������� �����, ����, ��� �� ������� ��
��������� �����, �������� ������� ������������� ���������� �����������
������������� � ����� ������ ������������� ������.

while
— ��� ��� �� ������������� if.  �� ������������ ��� � ���������-�����,
����������� ����� � � ��������� (������ ���������� �����);
��� ���� �������� �������� ��� while ������� ... end
������ ����, ������������� �� ��� ���, ���� ������� ����������� (�.�.
����������� ���������� ������� ���� true).  �� whileif ����� �����
���� ����� ��������� � ��� ���������� ���������:

 
ruby> i = 0
  0
ruby> print "It's zero.\n" if i==0
It's zero.
  nil
ruby> print "It's negative.\n" if i<0
  nil
ruby> print "#{i+=1}\n" while i<3
1
2
3
   nil

������ ���������� ������������� ��������� ���������� �������� �������
unless
— ��� �������� ��� if,
until
— �������� ��� while
�� ��������� ��� �������� ����, ��� ��� ��������. �������������������.

���������� 4 ������� �������� ���������� ����� ������ ����.  ������, break
���������, ��� � � C, ������ ����� �� �����.  ������, next ���������
������� �� ������ ��������� �������� (��� ��, ��� � continue
�).  ������ — � Ruby ���� �������� redo, ������� �������� ��������� �������
��������.  ����������� ���� ��� �� � ������������ �������� ���������� break, next,redo:

 
while (condition) {
 label_redo:
   goto label_next        /* next */
   goto label_break       /* break */
   goto label_redo        /* redo */
   ;
   ;
 label_next:
}
label_break:
;

��������� �������� ��������� �� ����� �������� return.  ��� ���������� return
���������� �� ������ ����� �� ���� �����, �� ����� � ������� �� ������,
����������� ������ ����.  ���� ����� ��������, �� �� ����� ��� ��������
����� �������� ����������� ������, ����� ������������ nil.

for

������������� �� � ���, ��������, ���������, ��� �� �������� ����� �
«for».  � Ruby for ��������� ����� ���������, ��� ����� ���� ��
������������.  ��������������� ���� ����������� ��� ������� �������� ��
���������:

 
for elt in collection
  ...
end

��������� ����� ���� ������������ ��� �������� �������� (��� ��� ��� ��, ���
������������� ���������� �����, ������ � ������ «for»):

 
ruby> for num in (4..6)
    |    print num,"\n"
    | end
4
5
6
   4..6

��� ����� ����� ���� ���������� ������� ������ ���������, ������ ��� ������:

 
ruby> for elt in [100,-9.6,"pickle"]
    |    print "#{elt}\t(#{elt.type})\n"
    | end
100    (Fixnum)
-9.6   (Float)
pickle (String)
   [100, -9.6, "pickle"]

�� �� ������� ��������� ������. for, �� ����� ����, �������� ������
�������� ������ each,
������� — ��� ���������� — ����� ����� ������ �������� �������������
����������.  ��� ��������������� ������� �������� ��������������:

 
#  If you're used to C or Java, you might prefer this.
for i in collection
  ...
end
 
#  A Smalltalk programmer might prefer this.
collection.each {|i|
  ...
}

��������� ����� ����� ������� ������� ��� ������� ������, �, �������
��������� �� ������������, ����������� ����� �������� ������ � ����.  ����,
������� ��������� ������ ������ — ������� ���������.

top
Back to top

Ruby — ����������� ������������

���������

��������� �� �������� ���-��, ������������ ������ Ruby.  ���
������������������ � ��������-��������������� ������ ����������������. 
��� ����� ���� � Lisp, ���� ��� ��� �� ���������� �����������.  ��� �� ��
�� ����, ��������� ���������� �� �������� ������� ��������� �����, ��� ���
������� ���������� �� ����� ��������.

������ iterate (���������) �������� «����������� ���� � �� ��
����� (��, ���������) ���, ��� ��� �������� (iterator) — ��� �����,
�������� ���� � �� �� ����� ���.

����� �� �������������, �� ��������� � ������������� ������ �� ���������
��������� ��������.  � � �� �������� ��, ��������� for ��� while.
��������,

 
char *str;
for (str = "abcdefg"; *str != '\0'; str++) {
  /* process a character here */
}

������� ��������� C for(...)
������������ ����������, ���������� � �������� ������, �� ���
�������� *str ��
null ���������� ������ ������������� ������� � ���������� �������������
������.  ��� ���� ������������� � � ��� � �������������� �����
����������������.  ��������������� ����� �������� ����� ������ ���������
��� ����������.  ���������� �� ������ sh :

 
#!/bin/sh
 
for i in *.[ch]; do
  # ... ���� ��� ����� �������� ��� ������ ������
done

�������������� ��� ��������� �� � � ������ � ������� �������� , � shell
��������� � ������� ��������� � ����������� ���� ������ ���� �� �����. 
�����, ��� �������� �� ��������� ����� ������� ������, ��� �, �?

����� �������� ������: ���� � ������, ��� � ����� ���� ��������� ���
�������� ���������� �� ���������� ����� ������, �� ��������������, ��� �����
���������� �������� �� ����������� ����� ������, ����� ������������ �
�������������� ������.  � ��� ������������ ����� ������� ���� �� ������
����������� ���� ������, ��� ��� ����� �������� ����� ������� ���������
��������.

���, ������ ���� ��� �������� � ���� ��������� �������� ���������
����������. � ��������� ������ ��� ���� ���� ���������� ����������� ������;
Ruby �� ��������� ���������� ��������� ��������.

� Ruby ��� ���� String
������� ��������� �������� ����������:

 
ruby> "abc".each_byte{|c| printf "<%c>", c}; print "\n"
<a><b><c>
   nil

each_byte
— �������� ��� ������� ������� � ������.  ������ ������ ������������� �
��������� ���������� c
��� ����� ���� ������������ ��� �����, ������ ������������ ��� �� �…

 
ruby> s="abc";i=0
   0
ruby> while i<s.length
    |    printf "<%c>", s[i]; i+=1
    | end; print "\n"
<a><b><c>
   nil

… ��� �� �� �� ����, �������� each_byte � ������������� �����, �
����� �������� ��������� �������� ���� ���� ����� String ����� � �������
���������� �������.  ���� �� ����������� ���������� — ��� ��, ��� ���
����� ��������� �������� � ������ �������� ���������; � ����� ����, ���
�������� ����� �� ������������� �������� ����������� ������.  (�� ��,
��������� �������, �� ����� ���������� ���������� � ���, ��� ����� ������
������).

��� ��� �������� ��� String
each_line.

 
ruby> "a\nb\nc\n".each_line{|l| print l}
a
b
c
   nil

� ��������, ������� ����������� �� ������� ������ ��� ���������������� �� �
(����� ������������ �����, ��������� ��������, � �.�.), ����� ����������,
��������� ���������.

�������� for,
�������������� � ���������� �����, ������ �������� ��� �� �����, ��� � ��������
each.
each
��� String
������ �� �� �����, ��� � each_line,
��� ��� ������� ��������� ���������� ������ � for:

 
ruby> for l in "a\nb\nc\n"
    |   print l 
    | end
a
b
c
   nil

�� ����� ������������ ����������� ������� retry � ��������� � �������������
������, ��� ��� ������ �������� ����� ��������� � ������ ������.

 
ruby> c=0
   0
ruby> for i in 0..4
    |   print i
    |   if i == 2 and c == 0
    |     c = 1
    |     print "\n"
    |     retry
    |   end
    | end; print "\n"
012
01234
   nil

yield
������ ������������ � ����������� ���������. yield �������� ���������� ����� ����,
����������� � �������� (��� ����� ����� �������� ���������� � ����� � ����������� ��������).  � ��������� �������
������������ �������� repeat,
������� ��������� ���� ���� ���������� � ��������� ���������� ���.

 
ruby> def repeat(num)
    |   while num > 0
    |     yield
    |     num -= 1
    |   end
    | end
   nil
ruby> repeat(3) { print "foo\n" }
foo
foo
foo
   nil

��� ������ retry,
����� ���������� ��������, ������� ����� �������� ��� ��, ��� � while, ����
��� ������� ��������, ����� ���� ����������.

 
ruby> def WHILE(cond)
    |   return if not cond
    |   yield
    |   retry
    | end
   nil
ruby> i=0; WHILE(i<3) { print i; i+=1 }
012   nil

�������, ��� ����� ��������? ���� ��������� �����������, �� �� ������
�������� ����������� ���������; ����������, ����� �� �������� ����� ��� ������,
�� ����� ������ ���������� ���������� ��� ���� ��������.  � ���� ������
����������� ���� ������� �� ������� �������.  �� ������ �������� �
������������ ���������� ���������� ����� ����, ��� ����� ����� ������
������������� � ���, ��� �� ����� ������.

top
Back to top

Ruby — ����������� ������������

��������-���������������
������

«��������-���������������» — ����� �� ��� ��������
���������.  �������� ���-�� «��������-���������������» — � ����
����� ����� ������ ����.  � Ruby ������� ��� �� ��������-���������������
�����; � ��� �� ����� �������� «��������-���������������»?

���� ��������� ��������� ������ �� ���� ������, �� ��� ���, ��������,
�������� � ������ � ���� ��.  ��� ������� ������ �� ��������������,
������� ������� ������������ � ��������� ������������� ����������������

����������� ������ � ���������������� �������� � ���������� ���� �������������
������
, � ����������, ������� ��������� �������� ��� �����
�������.  � ������������ � ���� �������, ������ �������� ���������,
���������� � ������������; ��� ��������� ������ �� ������� ������� ����
��������, ������� �������, ������� � ���������.

��������, ������������� � ����� ������� � ���, ��� ��������� �������
��������������, ������� ����� ���� ���� � ����� ������� � ������ ������ �� ���
����� ������� � ������ ������.  ��� ������ ������ ���������, ���
����������� ���� ������ �� ����� ��������, ����� ���������� ��������������
�������, ��� �� �������� � �����.  �������� ���������� � �������� � ������
� ������ � ������� ����� ����������� �������� � ������ ���������� �����. 
������� � ����������������� �������������� �������� ������������ � �����������
����, ��� ��������� ���������� ������� �� ��, ��� ���� �� �� �����
������������� ������, ������� �� ��������� ������� ���������� ������
����.  ���������� �������� ����������������, ������� ����� ������
�������������� � ������������ ���� ��� ������������ ���������, �� ���� ������
�������, ������� �������� � ���� ��������������� ����� ��������� ����� ������.

��� ��� ���� ��������-��������������� ���������������� — ��� ���������
��������� ������������� ������ � ��������� �������������� �� ���� ������;
��� ������ ��������� ������ � ��������� �� ��������
����� ������,

  • �� ����� �� �������������
    ������ ��� ��������� ������� � ������� �������, ������� ��������� ���
    ��������� �������� � �������� ����������.
  • � �������� �������������
    ������ ��� ����� �������� �������� � ����� ������������� ��������� �
    ������������.

��, ��� �� ����� ������� «�����������», ����� ���� ����� �������
��� ������� ������; �� �� ����� ���������� ���, ����� �������; ����� �� ��
��������� ���� ��������� �������� (�� ����������� ������, ����� �� ���������
�������, ��� � �������� ���-�� �� ���); ����� �������, ��� �������������� ��
��� ��������� ���� ��������� ��������������� � ��������� ��������
�����������.  ����� ���� �������� ��������, ��� �� ����� ������ ��� ��
�������� ������.

����� ��������, ��� ����� ������� �� ���� ��������� ���� ������, ������
������ ������ ���� ����������� ������������� ��������, ����� ���-�� ���� ��
���, ��� ��������������.

������� ����� � �������; �� ������� �����, ����� ���� ����������, ������
��������, �� ������� ����, �������� ����������������� ���� ���������.  �
����� ������ ���� �������.  ��� ������ �����������, ����� �������, � ���,
����� ������������ ����������, ���������� � ������� ���������� ������� � ���
������ ������.  ��� ��� ����� ������������� �� ����� ����������������? ��
� �������� ����� ����������� ������ �������� ����������, ��������, � ����� float
����� ��������� ����� �������� � ���� ���������� ���������� �� ��������
���������� ������, ��������� �� �������� � ���� ��� �������������.  ��� ��
����� �� ���? ��-�� ������ � ��������� ���� ���������� ����� ���� ���������
�������� �������� ������ �� ���� ������.  �����, ��� �������������� �� �,
����� ��� ��� ������ ��� ������ ����� ���������� �������� ������, ������� ���
����������� ����������� �������� �������������.  (������ ����������� ����
������ �������������� �� ����� ������ �� ���.)

������� ��� �� ����� �������� � ��������-��������������� (��) ���������
����� ��������������� � ���������� ������ �������.  ������ ��������
������������ ��� ���������� ������ �������� ����� �� «����� ��
������������ ����� ������ �������� ����� �������� ������� �����», �
«����� ����� �������������� ������ ���� �����». � ���� � ����
�������� ��������.  ���������� ��������� ������� ������ �������, ���������
��� ���� �� ����� ����� ������� � ��� ���������� ��� ����� � ���
����������������.  �� ������ ��������� ��������� ���������� � �����������,
����������� ��������� ��� ���������, �������� ��, ��������� �������� � …
������ �����…

�� �� ���� ����������� ���������� ������������ �������� — ������? � ������
���, ��� ��� �� �����, ������� �� �������� ����� �������. ���� ������
������������ ��������, ������� ��������� ��������� � ���������.  �����
�������, ���� ���-�� � ��������� �������� ���������� ��������� ����������
�������� (������, ������� ����������� ������� ������-�������� ������) �
�������, ���������� ������ ����, ��� ���������� ���-�� �� ��.  �� �����
���������� ��������� (���, ��������, �� ����� ����������, — ������� �� ����
�����) ��� ����� �������, ��� ����������� ����������� ������� Tripmeter
������������ ��������
.  ��������� ����� ���� �� ��������� �����, ��
���������� ������� � �����.  ��� �� ������������� ������, �� ��� ��? ��
��� ������ ������ ��� ����������� ������ �������.  ��� ������ ���� �� ��������,
������� �� ���������������� ����� ������������� ���� ������� ������������
�������.

�� ������ ����������� �� ������� ���������� ���� ��� �����, ������ ���
����������� ������� ��������� factory, ������� ���������� �������� ����������,
��� ��������� �� ����������.  ������������, ��� �� ����� ����� ���������
������ �������; ������ ����� �� ����������, ����� ������ �� ���������� ����
��������� �� ������������ �������.  ������ (���, ���� ��� ������ ��������,
tripmeter factory) ����������� � ���, ��� �������� «�������«,
� �������� ������ ������� ����������� � «��������«.  �
����������� �� ������ ���������, ����� ����� ��� ��������� �� ����, ��� ��
����� �������� ������ ������ ����, �� �� � Ruby.

����� ������ �� ������� � ���, ��� ������������� �� ����� ���������
���������
������� �� ������.  � ����� ����, �� ����� ����� �����
�������� �������� ����������, ������������, ����� �����������, ������� �
������������ � ������ ���������.  ��� Ruby ���� ��� (����� �� ��������� �
�++), ��� ��� �� ���, ����� �� �������������� ������, �� �� ����������� �������
�������� ����� ��� ���������� ������.  �� ���� ������������� �� �����
��������� ��� �� Ruby ���� � ���� ���������� ����. ��������� ����� �����
«�������� � �������» (������ ��������), �� ������� �� �������� �
«��������» (�������).   �� ��� �����?

top
Back to top

Ruby — ����������� ������������

������

��� ���� �����? � �� ���������������� �� �� ������ ������� ��������� ������
������� �������; ������ ����� ������� ���� ����� � ��� � ���� ����� ��������
(����� �� �� ���� �������� � ��������������� �����.) �� ������ �������, ��� ��
���� ��������� �������, � ��� ��������� � ����� ������, �������� ���������
�������� ��� ����������� ������. ��� ������ ����������� ���������� �� ������
������������� ��� ������ � ���, ��� �� ����� ���� ��������� ������. ��������,
������� ��� ��������� ����������� � ������� (���, ��� �����������, ���������,
������� �� ��������) �������� �������� �������

� Ruby �� ���������� ����� ������, ��������� �������� ������� (��� ��, ��� �
�++ ��� Java). ����� ��������, ��� ������ �� ��������, ������������� ������ ��
�����.

 
ruby> "abcdef".length
   6

����������, ���� ��������� ������ ������������� � ��� �����.
����������, �� �������� ����� length ������� "abcdef".

������ ������� ����� ����� ��������� ���� ������������� � length, ���
������ ��������.  �������, ��� ������������� �� ���������, ����������� ��
����, �� ����� ���������� ���������, � ����������� �������� ����� �������� �
����������� �� ����, �� ��� ��������� ����������.

 
ruby> foo = "abc"
   "abc"
ruby> foo.length
   3
ruby> foo = ["abcde", "fghij"]
   ["abcde", "fghij"]
ruby> foo.length
   2

��� �� ����� � ���� ��� ������ ����� ������������� � ����������� ��
����, � ����� ������� �� �������.  � ������ ���, ����� �� ����������� foo � ���
����� � ���������� �������, �� ��������� �� ������� ������, � ����� ����� ����
������ ���� ����������� �����.  �� ������ ��� foo ���������
�� ������, � ���� ������� ������, ��� ����������� ����� 2, 5, or 10; ��
�������� ���������� ������� �����, �������, 2 (������ ���������� ����� �����
����, �� �������, ��������) .

 
ruby> foo[0].length
   5
ruby> foo[0].length + foo[1].length
   10

���������� ��������, ��� ������ ���-�� ����� � ���, ��� ������ ����
��������
.  ������ � Ruby ����� ����� ������, ��� ��� ���
������������� ������ �� ��� ������������� ����� ���� ������������ �����������
���������.  ��� ����������� ������������ �� ������� ����������� ���������
����������� ���� �������, ��������� ������������ ��������� ����� ��������
�������, ������������� � ���������� ����, ��� �� �����, ��� �������� ��
������������ �����, ����� ���� ��������� � ��������� ���� ������, � �����������
����� ��, ��� �� ������������.  ��� �������� �� ������ ����������������
(�������, IMHO, Java ���������� �� ������ �������) ���������� �����������.

����� ������ �������� ���������, ������� �� �� ��������,
«������������» ������:

 
ruby> foo = 5
   5
ruby> foo.length
ERR: (eval):1: undefined method `length' for 5(Fixnum)

����� �������, ���������� �����, ����� ������ ����������� ��������, ��������
�� ��, ��� ��� �� ����� �����, ��� ��� ��������������.

���� ������ ���������� ���������, ��� ������ ����������� � ������,

 
object.method(arg1, arg2)

�� �� ����� ��������, ���� ���� �� �� ������ ���������������.

 
object.method arg1, arg2

� Ruby ���������� ������ ���������� self; ��� ��������� �� ����������
����� ������.  ����� ���������� ��������� �����, ��� ��� �������� «self.»
����� ���� ������, ����� ������ �������� ����������� ������:

 
self.method_name(args...)

���� �� �� �����, ��� �

 
method_name(args...)

��� ����� ��������, ������ ������� �������� ������ �����������
������� ������ ������� ������� self.  ��� ������ Ruby ���, ��� ����������
����� ��������-��������������� ������.  ��� �� �������������� ������ �����
���� ������� �������� � ������ ������ ���������������� ��� ���, ��� �� �����
��������, ��� ������ ������� ����� �� ����� ���� �������� �������� ��������
Ruby.   �� ����� �������� � �������� ��� ���� �� ��� �� ����
�������� ��������, ���� ��� �� ��� ����� �������.

top
Back to top

Ruby — ����������� ������������

������

�������� ��� ����� ��������, � �� ����� �� ����������������.  ��������,
��� ���� ������ ��������, ��������, ������ «bow-wow» ���������� ��
������; � �� � ����� ���� ����� ������������� ���������� ��� � ������
����������.

� ������������ �� ����������������, ��������� �������� ����
«������» ���������� �����, � �������� �������, �������������
������, ���������� ��������������� ����� ������.

� ����� ������, ����� ��������� ������� � Ruby ��� ����� ������ �� �����, ��
������ ������ ��������� �������������� ������� ������, � ����� ���������
��������������.  ��� ����������� ��������, ������� ������ ��� �������
�������� ����� Dog.

 
ruby> class Dog
    |   def speak
    |     print "Bow Wow\n"
    |   end
    | end
   nil

� Ruby ������������ ������ ����������� � ������������ classenddef ������
����� ������� ��������� ����������� ������ ������, �������, ��� ��
����������� �����, ���������� ��������� ������������� ��������� ��������
������� ������.

������, ����� ����������� ������ Dog, �� ����� ������������ ��� ���
�������� ������� «������».

 
ruby> pochi = Dog.new
   #<Dog:0xbcb90>

�� ������� ����� ������ ������ Dog, � ���� ��� ��� pochi
����� new
������ ������ ������� ������ ������� ������.  ��������� pochi
����������� ������ Dog
� ������������ � ����� ������������ ������ �� ����� ��� ��������, ������� ��
���������� ��� ������ Dog
�.�. ���� ���� Dog-�����
���� ����� �������, ���� ������ ���� ��������, ������� pochi ����
��������� ���������.

 
ruby> pochi.speak
Bow Wow
   nil

�������� ������ ������� ������ ������ ���������� �����������������
����� ������.  ��� ����� �������� ������, ������ ��� �� ����� �����
������������ ���������� � ���; �� �� ����� ������ ��������� class Dog
��������� ��� ���.

 
ruby> Dog.speak
ERR: (eval):1: undefined method `speak' for Dog:class

� ���� �� ������ ������, ��� �������� ������ ��������� ����������.

� ������ �������, ���� �� ����� �������� ��� ������ ��� �������� �
����-����, �� ����� ������� (���������������) ���������, ��������� ������, �
������ ������� �� ��� ������� ���� ������ ��� ��� ��������.

 
ruby> (Dog.new).speak   # or more commonly, Dog.new.speak
Bow Wow
   nil

«��������,» ������� ��, «��� ��� ������ ����������,
���������� � �����?» ��� ������ — ���� �� �� ���������� ���� �� ��� (���
�� ������� � pochi),
�������������� ������� ������ Ruby �����, ��� ��� �������� �������� ������ �
������������ ��������� �� ���.  �� ����� ���� ��� ������, �.�. �� �����
������� ���� ������� �����, ������� ��� ����.

top
Back to top

Ruby — ����������� ������������

������������

���� �������������� �������� � ������������� ����� �����������
����������.  �� �����, ��� ��� ����� ���� �������������, � ���
������������� ���� ��������
.  ����� ������ ������ ���������
�������������� ����� ������, � ������� ��� �����������.

�� ����� �������� ��� ��������� � Ruby:

 
ruby> class Mammal
    |   def breathe
    |     print "inhale and exhale\n"
    |   end
    | end
   nil
ruby> class Cat<Mammal
    |   def speak
    |     print "Meow\n"
    |   end
    | end
   nil

���� �� ���� �� ����������, ��� ������ Cat ������ ������ (breathe), ������ ���
��������� ��������� ������ Mammal, ��������� Cat ��� ��������� ��� �������� Mammal
(� �� ������������ ������� ����� �������� ���������� � ������� (�����
�����) ����� �������� ������������.) �������������, � ����� ������
������������, ����� (cats) ��������� �������� ����������� ������ (breathe);
����� ���������� ������ speak
method, ���� ����� ����� � ������ (breathe) � �������� (speak).

 
ruby> tama = Cat.new
   #<Cat:0xbd80e8>
ruby> tama.breathe
inhale and exhale
   nil
ruby> tama.speak
Meow
   nil

������ ��������, ����� ��������� �������� ����������� �� ������
������������� ������������ ����������.  ���� ������ ����� ����� ���
������, �������� �������� ���������� ���������� ����.

 
ruby> class Bird
    |   def preen
    |     print "I am cleaning my feathers."
    |   end
    |   def fly
    |     print "I am flying."
    |   end
    | end
   nil
ruby> class Penguin<Bird
    |   def fly
    |     fail "Sorry. I'd rather swim."
    |   end
    | end
   nil

������ ����, ����� ��������� ���������� ��� �������� ������� ������ ������,
�� ����� ������ �������� ��� �������������� �� � ������������ � ����������
����� ���������� � ������������.  ��� ������������� ������������ ������
�������� differential programming. ��� ���� �� �����������
��������-���������������� ����������������.

top
Back to top

Ruby — ����������� ������������

���������������
�������

� ��������� �� ����� �������������� ��������� ������ ����������� ���
����������������.

 
ruby> class Human
    |   def identify
    |     print "I'm a person.\n"
    |   end
    |   def train_toll(age)
    |     if age < 12
    |       print "Reduced fare.\n";
    |     else
    |       print "Normal fare.\n";
    |     end
    |   end
    | end
   nil
ruby> Human.new.identify
I'm a person.
   nil
ruby> class Student1<Human
    |   def identify
    |     print "I'm a student.\n"
    |   end
    | end
   nil
ruby> Student1.new.identify
I'm a student.
   nil

�����������, �� ����� ��������� ����� identify ����������� ������ ��� ������
������. .  ��� ����� ������������ super.

 
ruby> class Student2<Human
    |   def identify
    |     super
    |     print "I'm a student too.\n"
    |   end
    | end
   nil
ruby> Student2.new.identify
I'm a human.
I'm a student too.
   nil

super
��������� ���������� ��������� ��������������� ������. ������ �������, ���
���������� ��� ���� �����…

 
ruby> class Dishonest<Human
    |   def train_toll(age)
    |     super(11) # we want a cheap fare.
    |   end
    | end
   nil
ruby> Dishonest.new.train_toll(25)
Reduced fare. 
   nil
 
ruby> class Honest<Human
    |   def train_toll(age)
    |     super(age) # pass the argument we were given
    |   end
    | end
   nil
ruby> Honest.new.train_toll(25)
Normal fare. 
   nil

top
Back to top

Ruby — ����������� ������������

���������� ��������

����� �� ��������, ��� � Ruby ��� �������, ������ ������ ��� �� �����, ����
����� ��� ���� ��� �������. Earlier, we said that ruby has no functions, only
methods. However there is more than one kind of method.  � ���� ����� ��
������ ������� ���������� ��������.

���������, ��� ��������, ���� �� ��������� ����� «top level», � ��
������ ����������� ���������� ������.  ����� ����������� ������ �����
�������� ������� � ����� ������������ ����� ����������������, �����
��� �.

 
ruby> def square(n)
    |   n * n
    | end
   nil
ruby> square(5)
   25

�������, ��� ��� ����� �� ����������� �������� ������, ������ Ruby ��������
��� � ����������� �������� ������ Object, ������� �������� ������������
��� ������ ������� ������.  � ���������� ����� ������ � ���������
������������ ������ �����.  ��� ���������, �� ���� ��������� ������: ��� private
(���������) ����� ��� ������ ������. ���� �� ����������, ��� ��� ��������, ��
����� �� ��������� �������� ��, ��� �� ����� ���� ������ ������ ��� �������,
��� � �������:

 
ruby> class Foo
    |   def fourth_power_of (x)
    |     square(x) * square(x)
    |   end
    | end
  nil
ruby> Foo.new.fourth_power_of 10
  10000

�� �� ����� ���� ��������� ����� � �������:

 
ruby> "fish".square(5)
ERR: (eval):1: private method `square' called for "fish":String

��� ���������� ������� ��� ���������� ������ �� ������� Ruby (������� — ���
��� ��� ������ ��������, �� ����������� ������� ���� �������� self) ���
����������� ����������� ������ �������, ���������� �� ������������ ������
����������������.

������������ �������� � �� ����������������, ��� �� �������� �������� �����,
�������� ���������� ����������������������, ��� ���
����� ������� ������ ��������� � ��� �� �� ������ ��� ������.  ���������
��������� ������� � ����� ������ ������ ���� ������ �� ��� �������������; ��
������ ��������� ���� ��� ��� �������� � ��� �������� �������, �������, ���
������ �����, ��� ��� ������ ������.  ��� �������, ����� ������ �������
����� � ������� ������, ��������� �������, �� ������� ������������ ������ (�
����� ���� �������� ������������� ��� �������������, ��� ������� �� �������
�������� ������� ������ ��������� ��������������).  � ����������� ����
����������� ������� �������� �� engine ��� �� ���������� ����������� ��������.

 
ruby> class Test
    |   def times_two(a)
    |     print a," times two is ",engine(a),"\n"
    |   end
    |   def engine(b)
    |     b*2
    |   end
    |   private:engine  # this hides engine from users
    | end
   Test
ruby> test = Test.new
   #<Test:0x4017181c>
ruby> test.engine(6)
ERR: (eval):1: private method `engine' called for #<Test:0x4017181c>
ruby> test.times_two(6)
6 times two is 12.
   nil

����� ������������, ��� test.engine(6) ������ �������� 12, ��, ��� ��
�����, engine
���������� ������������ ������� Test.  ������ ������ ������ Test, �����
��� times_two,
����� ����� ������������ engine
��� ���������� ������������ ������������� ���������, ������� ������� �� ������ times_two
�����������, ������� ������������� ���� �����, ����� �������� �������� engine (�����,
��������, ������� ������ b*2
������ b+b,
����������� ������� ������������������ ������ ��������) �� ����������� ��
�������������� ������������ � ��������� ������ Test objects.  ����������,
������ ������ ������� ����� ����� ���� ��������; ������������ ����������
�������� ���������� ����� ������ ����� �� �������� ��������� ����� ������� �
���������� ������.

top
Back to top

Ruby — ����������� ������������

Singleton-������

��������� ������� ������ ������������ ��� ��������������� � �����������
������, �� ������ ������, ����� ��������� ������ ������ ����� ������ ���������. 
� ����������� ������ �� ������ � ���� ������ ���������� ����� �����, �������
����� �������������� ���� ���� ���.  � Ruby �� ����� ��������� ������
������� ��� ����������� ������.

 
ruby> class SingletonTest
    |   def size
    |     print "25\n"
    |   end
    | end
   nil
ruby> test1 = SingletonTest.new
   #<SingletonTest:0xbc468>
ruby> test2 = SingletonTest.new
   #<SingletonTest:0xbae20>
ruby> def test2.size
    |   print "10\n"
    | end
   nil
ruby> test1.size
25
   nil
ruby> test2.size
10
   nil

� ���� �������, test1
test2
����������� ������ � ���� �� ������, �� ��� test2 ������������� ����� size, ��� ���
�� ����� ���� ��-�������.  �����, ������������ ������ ��� ����������
�������, ���������� singleton-�������.

Singleton-������ ����� ������������ ��� ��������� (GUI), ��� ��� �������
��������� ������ ������ ������������� ��������� ��������.

Singleton-������ �� �������� ������������ ������ ��� Ruby, ��� �����
������������ � � CLOS, Dylan, � �.�.  ����� � ��������� ������, ��������
Self � NewtonScript, ���������� ������ singleton-������.  �� ������
�������� prototype-based �����.

top
Back to top

Ruby — ����������� ������������

������

������ � Ruby ���������� �������, �� �����������:

  • ������ �� ����� �����
    ��������������.
  • ������ �� ����� �����
    ����������.
  • ������ ������������
    ������������ module
    ... end
    .

�� ����� ����… ����� Module ������ �������� ������������ ������ Class
������.  �������? ���? ���� ������.

���������� ��� ���� �������.  ���� ������������ ��� �����������������
�������� ������� � ��������.  ������ Math � ����������� ���������� Ruby
��������� � ������ ����:

 
ruby> Math.sqrt(2)
   1.41421
ruby> Math::PI
   3.14159

�������� ::
��������� �������������� Ruby �������������� ��������� (��������, ���������
������ ����� Math
���������� �������� PI
��������� �����). ���� �� ����� ����� ��������� �� ������ ��� ��������� ������
��� ������������� ::,
�� ����� �������� (include)
������ ������:

 
ruby> include Math
   Object
ruby> sqrt(2)
   1.41421
ruby> PI
   3.14159

������ �������� ������������� ������� �������� ������ (mixin). 
��������� �� ����� ����������������, ������� �++, ��������� �������������
������������
, �� ���� ������������ �� ����� ��� ������ �����������. 
�������� �������������� ������������ �� �������� ����� ����� ������� ���������;
����� �������, ��� ��������� ����������� � ������ ���� � ����� �
������ ��������.

Ruby ��������� �� ��������� ������������� ������������, �� ������� mixin-��
�������� ������� �������������.  �������, ��� ������ �� ����� ����
��������������� � �� ��� ������ ���������� ���������; �� ���� �� �������� (include)
������ � ����������� ������, ��� ������ �����������, ��� �������������
(«mixed in») � �����.

������� ����� ������������� � ������� ����, ����� ������� �������� �� �����
��������.  ��������, ���� � ������ ���� ���������� ����� each, �������
� ���� ������ Enumerable
�� ����������� ���������� ��������� ���� ��� ������ sortfind.

�������� ������������� ������� ���� ��� ���������� ����������������
�������������� ������������, �� ���� ����������� ����������� ���������������
������� ������� ���������� ������, � ����� ����������� �������� ����������
����� (�������� ����� ����� ��� ������ ����������� Java).

top
Back to top

Ruby — ����������� ������������

����������� �������

����� ���������� ���������� ������� ������� �� ������������� �������. 
����� ��� ����������, ����� ����� ��� ������� ���� �� ����� �������� ���� ����
� �������� ��������� ������� ������, ��� ��������, ��� �� �����
���������������� ��� ��� ���� �� ��� ���� ������.

����� ����������� ������ ��������� ��������� proc:

 
ruby> quux = proc {
    |   print "QUUXQUUXQUUX!!!\n"
    | }
   #<Proc:0x4017357c>

����� ��, �� ��� ��������� quux �������� ��������, �, ��� �����������
��������, ����� ��������� ���������, ������� ����� ���� ��������.  �
���������, �� ����� ��������� ��� ����������� ����� ��� ����� call:

 
ruby> quux.call
QUUXQUUXQUUX!!!
   nil

����, � �����, ����� �� quux ���� ����������� � �������� ���������?
�������.

 
ruby> def run( p )
    |   print "About to call a procedure...\n"
    |   p.call
    |   print "There: finished.\n"
    | end
   nil
ruby> run quux
About to call a procedure...
QUUXQUUXQUUX!!!
There: finished.
   nil

����� trap
���� ����������� ������ ������� �� ������ ������ �� ����� ��������� ������.

 
ruby> inthandler = proc{ print "^C was pressed.\n" }
   #<Proc:0x401730a4>
ruby> trap "SIGINT", inthandler
   #<Proc:0x401735e0>

� ���������� �������� ������� ^C ���������� ������������� ���������
����������.  ������ �� ���������� ��������� � ������������� ����������
����������, ��� ��� �� �� ������� ����������� ������.  (�� �� �� ��������
� ��� ����� — ����� ��������� ��� ������ exit ��� ����� ^D.)

��������� ��������� ����� ��������� � ������ ����: ��� �������������
��������� ������������ ������� ��� ����� ��������� ��� � �������. 
������������� ��������� ����������� ������ ����� ��������� ���:

 
ruby> trap "SIGINT", proc{ print "^C was pressed.\n" }
   nil

���, ��� ����� ���������,

 
ruby> trap "SIGINT", 'print "^C was pressed.\n"'
   nil

������� ����� ������ ���� ��������� �������� � �������������, ����� ��
������ ��������� ��������� ���������.

top
Back to top

Ruby — ����������� ������������

����������

� Ruby ���������� ��� ��� ����������, ���� ��� �������� � ����� ���
������-����������.  ���������� � ��������� �� ����� ����.  ���� �
���������������� ���������� ���� ��������� ����������, ��� ����� ������
����������� � ������ ����������� � ��������� Ruby ������ � ������.

� ����������� ������ ���������� ������ ���� ��������� ��� �������� �� ����,
������������ (�.�. �������� �� ��� �����������), � ������ ��������; ���������
��� �� ��������, � ��������� ����� �� ����� ����������, ���������� ���������� �
Ruby �� �����.

������ ����� �������������� ���� ��� ����������� ��������� ����������
���������:

$

���������� ����������

@

���������� � ������

[a-z]
or _

��������� ����������

[A-Z]

���������

������������ ����������� �������� ������-���������� � Ruby: self, �������
������ ��������� �� ����������� � ������ ����� ������, � nil,
�������������� ��������, ������������� �������������������� ����������.  �
����� �����, ���������� ��� ��������� ���������, �� self ��������
���������� ����������, �������������� ���������������, � nil �� �����
��� ���������.  ��� ��� ���� ������ ��� ����������, ��� �� ������ �������
� �����.

�� �� ������ ��������� �������� self ��� nil.main,
��������� self
��������� �� ������ �������� ������:

 
ruby> self
   main
ruby> nil
   nil

top
Back to top

Ruby — ����������� ������������

����������
����������

��� ���������� ���������� ���������� � $.  ��� ����� ���� ������������ �
����� ����� ���������.  �� ������������� ���������� ���������� ��������
����������� �������� nil.

 
ruby> $foo
   nil
ruby> $foo = 5
   5
ruby> $foo
   5

���������� ��������� ����������� � ������������� ����������
����������.  ��� ������, ��������� �� �������� ����� ���� ��������
��������.  ���������� �� ������������� ����� ������� ������� �����������
������; ��� ����� �������� ����������� ��������������� ������� �����
���������.  ���� �� ��� ������������� ���������� ���������� �� �������
��������, ��������� � ���, ��� �� ����� �� ���������������� ���, �����������
���������� ������������� ������������� �������� � ���������� ����� (����������
���������� ���������� ����� ���� $foo �������� ����� ������ �����).

����� ������� ��������� ���������� ���������� �������� ��, ��� ��� �����
������������; �� ������ ���������� ���������, ������� ����� ���������� ���
��������� �������� ����������.

 
ruby> trace_var :$x, proc{print "$x is now ", $x, "\n"}
   nil
ruby> $x = 5
$x is now 5
   5

����� ���������� ���������� ���������� �������� � �������� �������� ���
������ ��������� ��� �� ���������, �� ������ �������� �������� ����������
��������, ��� ������� ��� ����������� �������������� ���������� � GUI.

���� ��������� �������� ������ ����������, ��� ��� ������� �� ����� �������
($)
� ����������� ����� ��������.  ��������, $$ �������� id ��������
�������������� Ruby, �������� read-only.  ����� ��������� ��������
��������� ���������� � �� �������� (�������� ������ � ���������� ����������� �� Ruby
):

$!

��������� ��������� �� ������

$@

�������������� ������

$_

��������� ������, ����������� gets

$.

����� ��������� ������, �����������
���������������

$&

��������� ������, ������������ regexp

$~

��������� ���������� � regexp, ��� ������ ������������

$n

nth-� ������������ � ��������� ����������(�� ��
�����, ��� � $~[n])

$=

���� ����������� �� �������� ��������

$/

����������� �� ������� �������

$\

����������� � �������� �������

$0

��� ����� �� �������� Ruby

$*

��������� ��������� ������

$$

ID �������� ��������������

$?

������ ���������� ���������� ��������� ��������

���� $_
$~
����� ��������� ������� ��������. ���� �� ������, ��� ������ ���� �����������,
�� � ����� ���� ��� ����� ������� � ���� ������������ ������� ��� �������������
���� ����.

top
Back to top

Ruby — ����������� ������������

����������
���������� ������

���������� ���������� ������ ����� �����, ������������ � @, � �������
�� �������� ���������� ���, �� ��� ����� ���������, ��������� self. ���
������ �������, ���� ���� ��� �������� ��������� ������ � ���� �� ������, �����
����� ������ �������� � ����� ���������� ���������� ������ (@-����������).
������� ������� ��� @-���������� �� ����� ���� �� ������ ��������, �� ���� �
����������� (�.�. � Ruby @-���������� ������� �� �������� public), ��
����������� �������, ����� ��� ���� ���������� �������������.  ��� � �
������ ���������� ����������, @-���������� �������� ��������� nil ���� ���
�� ���� ����������������.

@-���������� � Ruby �� ��������� � ��������������.  ��� �������������
�������� ��������� �������.  ����������, ������ @-���������� �����������
����������� � ������ ��� ������ ������ �� ���.

 
ruby> class InstTest
    |   def set_foo(n)
    |     @foo = n
    |   end
    |   def set_bar(n)
    |     @bar = n
    |   end
    | end
   nil
ruby> i = InstTest.new
   #<InstTest:0x83678>
ruby> i.set_foo(2)
   2
ruby> i
   #<InstTest:0x83678 @foo=2>
ruby> i.set_bar(4)
   4
ruby> i
   #<InstTest:0x83678 @foo=2, @bar=4>

�������� ��������, ��� i
�� �������� � �������� @bar
���� �� �������� ����� set_bar.

top
Back to top

Ruby — ����������� ������������

��������� ����������

��� ��������� ���������� ������ ���������� � ��������� ����� � ������
�������� ��� ������� ������������� (_).  ��������� ����������, �
������� �� ���������� ��� @-���������� �� �������� �������� nil ��
�������������:

 
ruby> $foo
   nil
ruby> @foo
   nil
ruby> foo
ERR: (eval):1: undefined local variable or method `foo' for main(Object)

������ ������������ �������� ��������� ���������� ������ ���� ��
����������.  ���� �� ���������� �� �������������������� ���������
����������, ������������� Ruby �������, ��� �� ��������� ������� ����� � ����
������; ��������� �� ������ �� ��� ������ �����.

� ����� ������, ������� ��������� ��������� ���������� ���� ��:

  • proc{}
  • loop{}
  • defend
  • classend
  • moduleend
  • ���� ��������� (���� �� ����
    �� ����������� ���� ������� �� ��������)

� ��������� ������� defined?
— ��� ��������, ����������� ��� �� ��������� �������������. 
�� ���������� �������� ��������������, ���� �� ��� ���������, ��� nil
��������� ������.  ��� �� ������, ������� �������� bar
������������ � �����; ��� ���������� ����� bar ���������� �����������.

 
ruby> foo = 44; print foo, "\n"; defined? foo
44
   "local-variable"
ruby> loop{bar=45; print bar, "\n"; break}; defined? bar
45
   nil

����������� �������, ������� � ��� �� ������� ��������, ��� � ���������
����������, ����� ����� ��������� ����������, ������������� ��� �������. 
����, ��������� ���������� bar ����������� main � ����������� �������� p1p2:

 
ruby> bar=0
   0
ruby> p1 = proc{|n| bar=n}
   #<Proc:0x8deb0>
ruby> p2 = proc{bar}
   #<Proc:0x8dce8>
ruby> p1.call(5)
   5
ruby> bar
   5
ruby> p2.call
   5

��������, ��� «bar=0»
������� �� ����� ���� �������; ��� ������������ �����������, ��� bar
������������ � p1
p2
����� p1
p2
��������� ���� ����������� ��������� ���������� bar, � ����� p2 �������� �
������ «undefined local variable or method».

���� ����������� �������� ������� �� �� ����������� ���� ����������� �
�������� ����������: ����������� ��������� ���������� �������� ������������
���� ���� ��� ���������� �� ����� �������� ������� ��������.

 
ruby> def box
    |   contents = 15
    |   get = proc{contents}
    |   set = proc{|n| contents = n}
    |   return get, set
    | end
   nil
ruby> reader, writer = box
   [#<Proc:0x40170fc0>, #<Proc:0x40170fac>] 
ruby> reader.call
   15
ruby> writer.call(2)
   2
ruby> reader.call
   2

Ruby ����� ������������� � ���, ��� �������� ������� ��������.  ��
����� �������� ��������, ��� ���������� contents ����������� ����� readerwriter
�� �� ����� ������� ������������� ���� reader-writer ��������� box ���
���������� ����; ������ ���� ����� ����� ���������� contents, �
��� ���� �� ������������ ���� � ������.

 
ruby> reader_1, writer_1 = box
   [#<Proc:0x40172820>, #<Proc:0x4017280c>]
ruby> reader_2, writer_2 = box
   [#<Proc:0x40172668>, #<Proc:0x40172654>]
ruby> writer_1.call(99)
   99
ruby> reader_1.call
   99
ruby> reader_2.call
   15

top
Back to top

Ruby — ����������� ������������

��������� ������

��� ��������� ���������� � ��������� ����� �������� ��������.  ��������
�� ������ ������������� �������� ���� ���. � ������� ���������� Ruby ���������
������������ �������� ��������� �������� ��������������, �� �� ������ (��-ANSI
������ eval.rb �� ���������� ��������������):

 
ruby>fluid=30
   30
ruby>fluid=31
   31
ruby>Solid=32
   32
ruby>Solid=33
   (eval):1: warning: already initialized constant Solid
   33

��������� ����� ���� ���������� ������ �������, �� � ������� ��
@-����������, ��� �������� �� ��������� ������.

 
ruby> class ConstClass
    |   C1=101
    |   C2=102
    |   C3=103
    |   def show
    |     print C1," ",C2," ",C3,"\n"
    |   end
    | end
   nil
ruby> C1
ERR: (eval):1: uninitialized constant C1
ruby> ConstClass::C1
   101
ruby> ConstClass.new.show
101 102 103
   nil

��������� ����� ����� ���� ���������� � �������.

 
ruby> module ConstModule
    |   C1=101
    |   C2=102
    |   C3=103
    |   def showConstants
    |     print C1," ",C2," ",C3,"\n"
    |   end
    | end
   nil
ruby> C1
ERR: (eval):1: uninitialized constant C1
ruby> include ConstModule
   Object
ruby> C1
   101
ruby> showConstants
101 102 103
   nil
ruby> C1=99  # not really a good idea
   99
ruby> C1
   99
ruby> ConstModule::C1  # the module's constant is undisturbed ...
   101
ruby> ConstModule::C1=99 
ERR: (eval):1: compile error
(eval):1: parse error
ConstModule::C1=99
                ^
ruby> ConstModule::C1  # ... regardless of how we tamper with it.
   101

top
Back to top

Ruby — ����������� ������������

���������
�������������� ��������: rescue

��� ���������� ��������� ����� ��������� �������������� ��������. 
����, ������� ����� ���������, ����� �� ������������; ���� ����� ���������
������ � ������ ������ ������; ������������ ����� ����������� ������ ������.

 
ruby> file = open("some_file")
ERR: (eval):1:in `open': No such file or directory - some_file

«����������» ��������� ������ ����� � ������ ���������� �����
��������.  ������������� �������� ����� ���� �����������, ������������
�������.  ��������������, ��� ������������ �� � ������ ��������� ���������
������� ���������� ������, ������� ������������ ����� ����������� ��������, �
���������� ������ ��� ������ ���� ������� � ���� ������:

 
FILE *file = fopen("some_file", "r");
if (file == NULL) {
  fprintf( stderr, "File doesn't exist.\n" );
  exit(1);
}
bytes_read = fread( buf, 1, bytes_desired, file );
if (bytes_read != bytes_desired ) {
  /* do more error handling here ... */
}
...

��� ��������� �����������, ��� � ������������ ����� ����������� ��������� �
����� �����������; � ���������� ���� ��������� �� ������������ �������
����������.  � ������ �������, ���������� ���������� ������ ������ �����
��������� ���������������, ��������� ��������� ���������� ��������� ������
������������ �������� ���.

� Ruby, ��� � ����������� ����������� ������, �� ������������ ���������� ���
������ ���� ���������, ����� ������� ������� ���������� � ��������� ����������
� �� ���������� �������� ������������ ��� ���� ��������, ������� ������� �����
������ ���� ���.  ���� ����, ���������� begin �� ��� ���, ���� �� ����������
�������������� ��������, ������� �������� ���������� �����, ����������� �� ��
��������� (���������� � rescue). 
���� ���������� �� ����������, �� rescue-���� �� �����������. 
��������� ����� ���������� ������ ������ �� ���������� ����� ��� nil, ����
���������� ����������:

 
def first_line( filename )
  begin
    file = open("some_file")
    info = file.gets
    file.close
    info  # Last thing evaluated is the return value
  rescue
    nil   # Can't read the file? then don't return a string
  end
end

������ ������ ����� ����������� �������� � ��������� ���������.  �����,
���� ��������� ���� ����������, �� ������� ������������ ����������� �����
�����:

 
begin
  file = open("some_file")
rescue
  file = STDIN
end
 
begin
  # ... process the input ...
rescue
  # ... and deal with any other exceptions here.
end

retry
����� ���� ����������� ������ rescue ��� ������� ���������� ���������� ����� � begin
������ ����� ���������� ���������� ������ ������� ����������:

 
fname = "some_file"
begin
  file = open(fname)
  # ... process the input ...
rescue
  fname = "STDIN"
  retry
end

��� �� �����, ����� ���� ����������.  �������������� ���� �����
��������� ���� ��� ����������� ����� � �����.  �� ������ ������������
�������� ������� ��� ������������� retry ��� ��������� �������������� ��������.

����� ���������� Ruby ���������� ���������� ��� ������������� ����� ������,
� �� ����� ������ ���� ���������� ������ � ����� ����.  ��� �����
����������� raise
���� �������� ��������� ���� ��������, ������� ������������ �� ���� ������,
����������� ����������.  �������� �� ����������, �� �������� ��� ��
�����.  ��� ����� �������� ����� �� ����������� ���������� ���������� $!.

 
ruby> raise "test error"
   test error
ruby> begin
    |   raise "test2"
    | rescue
    |   print "An error occurred: ",$!, "\n"
    | end
An error occurred: test2
   nil

top
Back to top

Ruby — ����������� ������������

��������� ��������������
��������: ensure

������ ������ ����� ������� �� ���������� ������ ���������� ������. 
��������, ������ ���� ������ �������� ����, �������������� ������ ������ ����
��������, � �.�., etc.  ���� �� ������������ ������ ���� ����� ������ ��
������, �� ����� �� �������� ��������� ��� ������� � ���� ����� � ���� �������,
��� �� ����� ��������; ������ ������� �� ������ ����� ����������� �� ����������
�����, ��� ���� ������� ����� ���� ��������� ��-�� ������������� ����������.

 
begin
  file = open("/tmp/some_file", "w")
  # ... write to the file ...
  file.close
end

� ���� �������, ���� ������ ��������� �� ����� ������ �����, ���� ���������
��������. ����� �� ������� ���������� � �������� ������������:

 
begin
  file = open("/tmp/some_file", "w")
  # ... write to the file ...
  file.close
rescue
  file.close
  fail # raise an exception
end

��� ��������, � ���� �� ���������� ������������� ��� ���������� ����,
��������� ���������� ����������� �� ������ returnbreak.

�� ���� ������� �������� ����� �������� ����� � ����� «begin...rescue...end»
ensure
���� ensure
����������� ���������� �� ���������� ���������� ����� begin.

 
begin
  file = open("/tmp/some_file", "w")
  # ... write to the file ...
rescue
  # ... handle the exceptions ...
ensure
  file.close   # ... and this always happens.
end

�������� ������������� ensure
��� rescue,
��� ��������, �� ���� ��� ������������ ������ � ����� ����� begin...end , rescue ������
�������������� ensure.

top
Back to top

Ruby — ����������� ������������

���������

��� ����� ��������?

�� ������ �������� @-���������� � �������������� ������, �� ����
�������������������� � ����.  @-���������� ������� �������� ���
����������, ���, ��� ������ �������� ��� �� ������ �������� ����� ��
������.  ����� ����� ����������� �������� � ��������� �������� ���������;
��� ����� ���������� ��������� �������, ���������� ����������� ���������
����� ��������� �� ������, ��� �� ������ ����� ����� ������� ����������, ��
������� ������ ��������� ������� �� ����� ����.  ���� ��� ���� ����������
writersreaders.

 
ruby> class Fruit
    |   def set_kind(k)  # a writer
    |     @kind = k
    |   end
    |   def get_kind     # a reader
    |     @kind
    |   end
    | end
   nil
ruby> f1 = Fruit.new
   #<Fruit:0xfd7e7c8c>
ruby> f1.set_kind("peach")  # use the writer
   "peach"
ruby> f1.get_kind           # use the reader
   "peach"
ruby> f1                    # inspect the object
   #<Fruit:0xfd7e7c8c @kind="peach">

���������� ������; �� ����� ��������� � ��������� ���������� � ���, �� �����
������ ���� �� �������.  �� ����� ����� ������� ������ �����������. 
������ ����� ����� ����� ����� � ��������� ���:

 
ruby> class Fruit
    |   def kind=(k)
    |     @kind = k
    |   end
    |   def kind
    |     @kind
    |   end
    | end
   nil
ruby> f2 = Fruit.new
   #<Fruit:0xfd7e7c8c>
ruby> f2.kind = "banana"
   "banana"
ruby> f2.kind
   "banana"

����� inspect

������� �����������.  �� ��� ��������, ��� ����� �� ����� �������������
������, ��� ���������� ����� ����������, ���� #<anObject:0x83678>
��� ������ �������� �� ���������, � �� �������� ����� �������� ���.  ���,
��� ����� ������� — ��� �������� ����� inspect � ����������� ������.  ��
������ ���������� ��������� ��������, ����������� ������ ���������� ��������,
������� ��������� ���� ��� ��������� @-����������.

 
ruby> class Fruit
    |   def inspect
    |     "a fruit of the " + @kind + " variety"
    |   end
    | end
   nil
ruby> f2
   "a fruit of the banana variety"

��� ������������� ����� to_s (��������� � ������), ������� ������������
��� ������ �� ������ �������.  � ����� ������, ����� ������������ ���� inspect ���
��������, ������������ ��� ��������� � ������� ��������, � to_s ���
������ ���������� ����� ���������. eval.rb ���������� inspect ���
������ �����������.  �� ������ ������������ ����� p ���
���������� �������� ������ ��� ������� ���������.

 
# ��� ��� ������ ������������:
p anObject
print anObject.inspect, "\n"

������ ������ �������� ����������

��������� ������ @-���������� ��������� � ���������� ����������, Ruby
������������� ������� ���������� ��� ����������� ����.

����������

������ (��������)

attr_reader
:v

def
v; @v; end

attr_writer
:v

def
v=(value); @v=value; end

attr_accessor
:v

attr_reader
:v; attr_writer :v

attr_accessor
:v, :w

attr_accessor
:v; attr_accessor :w

������� ������������� ����� �������������� � ������� � ������ ���������� �
��������.  ������ �� ��������� �������������� ��������� reader-� �
writer-�, � ����� ������� ����� ���������� � inspect:

 
ruby> class Fruit
    |   attr_accessor :condition
    |   def inspect
    |     "a " + @condition + @kind"
    |   end
    | end
   nil
ruby> f2.condition = "ripe"
   "ripe"
ruby> f2
   "a ripe banana"

More fun with fruit

����� �� ��� ������ ������ — ��� ����� ����� ������ ���� ������ ����.

 
ruby> class Fruit
    |   def time_passes
    |     @condition = "rotting"
    |   end
    | end
   nil
ruby> f2
   "a ripe banana"
ruby> f2.time_passes
   "rotting"
ruby> f2
   "a rotting banana"

�� ����� � ����� �������, �� ������ ��������� ��������. ��� �����, ���� ��
���������� ������ ������� ������ �����?  ���������, @-���������� ��
���������� �� ��� ���, ���� �� �� ������������� �����-���� ��������.

 
ruby> f3 = Fruit.new
ERR: failed to convert nil into String

��� ����� inspect
�������� �����, � �� �� ���� �������.  �� ��������� ��� ���� ����� � ����
� ��������� ������, �� �� ��� ��� f3 �� ��� �������� �� ����
�������.  ���� �� �� ��������, �� ����� ���� �� ���������� ����� inspect �����
�������, ����� �� �������� �������������� @-���������� ��������� ����� defined?
����� �� ��� ����� ������ ��� ������������� ������, ��, ��������, ��� ����� ��
����� ������; �.�. ������ ����� ����� ��� � ���������, �� ���������� ���� ��
�����-���� ������� ���������� �� �������.  ��� � ����� ����� ���������
�����.

top
Back to top

Ruby — ����������� ������������

�������������
��������

� ����� ������ Fruit �� ���������� ����� ���� @-����������: ������ ���������
��� ������, ������ — ��� ���������.  ������ ����� ��������� ������
������������������� ������ inspect ��� ����� ������, �� ��������, ��� ���
������ ������ ���������� �������� ������������� ������������.  � �������,
� Ruby ���� ������ �������������, ��� @-���������� ������ �����
����������������.

����� initialize

����� Ruby ������� ����� ������, �� ���� � �������� ������ ����� initialize
�������� ���.  ����� �������, ������� ����, ������� �� ����� ���������,-
��� ������������ initialize
��� ������� ���� @-���������� �������� «��-���������», ��� ��� ������
«������ inspect
������ ���� ��� �������». ;-)

 
ruby> class Fruit
    |   def initialize
    |     @kind = "apple"
    |     @condition = "ripe"
    |   end
    | end
   nil
ruby> f4 = Fruit.new
   "a ripe apple"

�� ������������� � ����������

������, ��� �������� �������� «��-���������» ������������.
���������� �� � ������� ����� ����, ��� «����� �� ���������»? 
��������, ����� ���������������, ����� ��� ������� ������ ��������� �� �����
��� ��������.  ��� ����� ���������� ������ ���������� �������� � ����� initialize
.  �� �� ����� ����� ��������� � ������� ������, �� ���������, ������� ��
������ � ������ ������ new
�� ����� ���� ���������� � ����� initialize.

 
ruby> class Fruit
    |   def initialize( k )
    |     @kind = k
    |     @condition = "ripe"
    |   end
    | end
   nil
ruby> f5 = Fruit.new "mango"
   "a ripe mango"
ruby> f6 = Fruit.new
ERR: (eval):1:in `initialize': wrong # of arguments(0 for 1)

������ �������������

��� ����� �� ������� ����, ���� � ������� initialize ������������ ��������, ��
��� ��� �������� ������� ��� ������ ��������� � ���, ����� �� ��������
��������� �� ������.  ���� �� ����� ���� ����������, �� ����� ������������
��������, ���� �� �����, � ��������� ������ ���������� �� ��� ��������
«��-���������».

 
ruby> class Fruit
    |   def initialize( k="apple" )
    |     @kind = k
    |     @condition = "ripe"
    |   end
    | end
   nil
ruby> f5 = Fruit.new "mango"
   "a ripe mango"
ruby> f6 = Fruit.new
   "a ripe apple"

�� ������ ������������ �������� «��-���������» ��� ����� �������,
� �� ������ ��� initialize
������ ���������� ������ ���� �������� ���, ����� ���������, ������� �����
����� �������� «��-���������», ��� ����������.

������ ������� ���� ����������� ���������������� ������ �����������
���������.  ���� ��� � ������� �� ����� ������� �����������, Ruby
������������ reflection �������� � ������ ���������� ���������� �����, �������
������ ���� ����������� ����������� ������������ �������.

top
Back to top

Ruby — ����������� ������������

�����

��� ����� ��������� ��������� ������������ �������.

����������� ���������

� ��������� ������ ���������� ���������� ��������� ������ ����������; �����
������������ ����� � ������� (;), ��� ����������� ��������� ��������� � ���������. 
Ruby ������ ����� ������� �����������, ������������ � ������, ����� ��� sh ��� csh
������������� ��������� � ����� ������ ������ ����������� ������ � �������, ��
��� �� ����������� � ����� ������; ������� ������ ���������� ��� ����� �
�������.  ���� ����� ������������� �������� ������ (\), �������
������ ������������; ��� ��������� �������� ������� �������� �� ���������
�����.

�����������

����� ������ �����������?  ���� ������ ���������� ��� ����� ��������� �
��������������������, ����� ������ ������� ������ ������� �� �����; �����
������� ������, ��� ������ ������ ���������� ������� ��� ������ ��� ��� ����
������� �������� �� ���� (��� ��� ������ ��). ����� ����, �� ������ ��������� �
���� ����� ������� �������� ����� ���� ��������� ���� ������; ��� �� ��� ��
����������� ������ ��������� ����� � ������ ��������� ����� ���-�� �������� ���
��������� �� � �� ������� «� ����, ��� ��� ����� �. ��, ���� ������, ���
��� ��� ������?»

��������� ������� ������������ ���������� ��������� �������, ��� ��������������
� ���������� ����������� ����� ���� ����, ��� �� ����������. ����������,
����������� �� ����� ���� ������� ��� ������������ ����; ���� ��� ��� ������,
��������, �� ����� �������� ������.  ����� ���������, ���, ���� ��
�������� Ruby, �� ������ ����������� ����� � ������������, � ����� ��� ������ �
������, �� ���� ����, ��� �� ������� ��� ����� �������� ���� ���� � �������
��������, �����������, ������������ ����.

Ruby ������� ������������� � �������� �������, �� �������� ������
����������� ���������� ������ ����� (#).  ���, ��� ������� �� ���,
��������������� ������������.

�����, ��� ���������� ��������� ������� ������������, ������������� Ruby
����� ���������� ���, ��� ��������� ����� �������, ������������ � «=begin» �
��������������� �� «=end«.

 
#!/usr/local/bin/ruby
 
=begin
**********************************************************************
  This is a comment block, something you write for the benefit of
  human readers (including yourself).  The interpreter ignores it.
  There is no need for a '#' at the start of every line.
**********************************************************************
=end

������������� ���

������������� Ruby ������������ ��� �� ���� ��� ������.  ��� ������
�������� �� ���� ����������; ���� ���-�� ��� �� ���� ���������, ������, ���
������ ������������.

 
# this results in an "undefined method" error:
 
print successor(3),"\n"
 
def successor(x)
  x + 1
end

��� �� ���������� ���, ��� ����� ���������� �� ������ ������, �����������
��� � ����� «������-����».  ����� ������������� ���������� ��
����������� ������, �� ����� ������������ ���������� �������������� ������, ��
� ���� �������, ����� ����� ����� ������, ��� ��� ������ ���� ����������:

 
# Conversion of fahrenheit to celsius, broken
# down into two steps.
 
def f_to_c(f)
  scale (f - 32.0)  # This is a forward reference, but it's okay.
end
 
def scale(x)
  x * 5.0 / 9.0
end
 
printf "%.1f is a comfortable temperature.\n", f_to_c( 72.3 )

���� ��� ����� ���������� ����� �������, ��� ��, � ���� ��, ����� ����,
�������� � Perl ��� Java, ��� ����������� ������� �����������, ���
���������������� �� � ��� ���������� (��� ��������� ��� ��������� ������������
��������� ��������������� ������).  ���������� ���� �������� ������ �����
��������� �������� ������.  �� ���� ��� �� ��� �������, ��� ����� ������
����������.  �������� � �������������� ������ ���������� ������ ��� ���������
— ���������� ������� main
� ������ �����, � ����� ������� �� �����.

 
#!/usr/local/bin/ruby
 
def main
  # Put your top level code here...
end
 
# ... put all your support code here, organized as you see fit ...
 
main # ... and start execution here.

����� ����� ������ ��, ��� � Ruby ���� �������, ����������� �������
��������� �� �����������, � ������������ ���������� �������������, ���������
��������������� �����.  �� ��� ����������� � �������������� include ���
������� � �������.  �� ����� ������� �������� ������������� ������� loadrequire. load ��������
��� ���� �� ����, �� ������� �� ���������, ��� ���������� � ������� � �����
��������� ������ ���� (����� ������� �� ��������� ������������� #include � C).
require
— ��������� ����� ������� ����, ��� ����������� ������ ���� ��� � ������ �����,
����� �� ������� �����.  ���� � ������ ������� ����� loadrequire; ��
����� ���������� � ���������� ����������� ��� � FAQ.

�� �� ��…

����� ���������� ������ ���� ����������, ����� ������ ��� ������ ������
��������� �� Ruby.  ���� ��������� �������, �� ������ ������ �������� � ���������� ����������� �����
«�������� � ���������» ;-) ���� �������� .  FAQ � ���������� �� ���������� �����
�������� ������� ���������.

�����, � ����������� �����������!

top
Back to top

�������������� ������ ����������� ������������ Ruby
Fri Feb 16 13:56:18 CST 2001 (Eng)
Mon Sep 10 16:16:48 CST 2001 (Rus)


Globals

  1. $!
  2. $$
  3. $&
  4. $*
  5. $+
  6. $,
  7. $-a
  8. $-i
  9. $-l
  10. $-p
  11. $.
  12. $/
  13. $0
  14. $1
  15. $;
  16. $<
  17. $=
  18. $>
  19. $?
  20. $@
  21. $DEBUG
  22. $FILENAME
  23. $LOADED_FEATURES
  24. $LOAD_PATH
  25. $VERBOSE
  26. $\
  27. $_
  28. $stderr
  29. $stdin
  30. $stdout
  31. $~
  32. $‘
  33. ARGF
  34. ARGV
  35. DATA
  36. ENV
  37. RUBY_COPYRIGHT
  38. RUBY_DESCRIPTION
  39. RUBY_ENGINE
  40. RUBY_ENGINE_VERSION
  41. RUBY_PATCHLEVEL
  42. RUBY_PLATFORM
  43. RUBY_RELEASE_DATE
  44. RUBY_REVISION
  45. RUBY_VERSION
  46. STDERR
  47. STDIN
  48. STDOUT
  49. TOPLEVEL_BINDING

DRb

  1. ACL
  2. ACL::new
  3. ACL#allow_addr?
  4. ACL#allow_socket?
  5. ACL#install_list
  6. ACL::ACLEntry
  7. ACL::ACLEntry::new
  8. ACL::ACLEntry#dot_pat
  9. ACL::ACLEntry#dot_pat_str
  10. ACL::ACLEntry#match
  11. ACL::ACLList
  12. ACL::ACLList::new
  13. ACL::ACLList#add
  14. ACL::ACLList#match
  15. DRb
  16. DRb::primary_server
  17. DRb#primary_server
  18. DRb::config
  19. DRb::current_server
  20. DRb::fetch_server
  21. DRb::front
  22. DRb::here?
  23. DRb::install_acl
  24. DRb::install_id_conv
  25. DRb::regist_server
  26. DRb::remove_server
  27. DRb::start_service
  28. DRb::stop_service
  29. DRb::thread
  30. DRb::to_id
  31. DRb::to_obj
  32. DRb::uri
  33. DRb#config
  34. DRb#current_server
  35. DRb#fetch_server
  36. DRb#front
  37. DRb#here?
  38. DRb#install_acl
  39. DRb#install_id_conv
  40. DRb#regist_server
  41. DRb#remove_server
  42. DRb#start_service
  43. DRb#stop_service
  44. DRb#thread
  45. DRb#to_id
  46. DRb#to_obj
  47. DRb#uri
  48. DRb::DRbArray
  49. DRb::DRbArray::new
  50. DRb::DRbBadScheme
  51. DRb::DRbBadURI
  52. DRb::DRbConn
  53. DRb::DRbConn::make_pool
  54. DRb::DRbConn::stop_pool
  55. DRb::DRbConnError
  56. DRb::DRbError
  57. DRb::DRbIdConv
  58. DRb::DRbIdConv#to_id
  59. DRb::DRbIdConv#to_obj
  60. DRb::DRbMessage
  61. DRb::DRbObject
  62. DRb::DRbObject::new
  63. DRb::DRbObject::new_with
  64. DRb::DRbObject::new_with_uri
  65. DRb::DRbObject#method_missing
  66. DRb::DRbObject#respond_to?
  67. DRb::DRbObservable
  68. DRb::DRbObservable#notify_observers
  69. DRb::DRbProtocol
  70. DRb::DRbProtocol::add_protocol
  71. DRb::DRbProtocol::open
  72. DRb::DRbProtocol::open_server
  73. DRb::DRbProtocol::uri_option
  74. DRb::DRbProtocol#add_protocol
  75. DRb::DRbProtocol#open
  76. DRb::DRbProtocol#open_server
  77. DRb::DRbProtocol#uri_option
  78. DRb::DRbRemoteError
  79. DRb::DRbRemoteError#reason
  80. DRb::DRbRemoteError::new
  81. DRb::DRbServer
  82. DRb::DRbServer#config
  83. DRb::DRbServer#front
  84. DRb::DRbServer#thread
  85. DRb::DRbServer#uri
  86. DRb::DRbServer::default_acl
  87. DRb::DRbServer::default_argc_limit
  88. DRb::DRbServer::default_id_conv
  89. DRb::DRbServer::default_load_limit
  90. DRb::DRbServer::new
  91. DRb::DRbServer::verbose
  92. DRb::DRbServer::verbose=
  93. DRb::DRbServer#alive?
  94. DRb::DRbServer#any_to_s
  95. DRb::DRbServer#check_insecure_method
  96. DRb::DRbServer#error_print
  97. DRb::DRbServer#here?
  98. DRb::DRbServer#insecure_method?
  99. DRb::DRbServer#main_loop
  100. DRb::DRbServer#run
  101. DRb::DRbServer#shutdown
  102. DRb::DRbServer#stop_service
  103. DRb::DRbServer#to_id
  104. DRb::DRbServer#to_obj
  105. DRb::DRbServer#verbose
  106. DRb::DRbServer#verbose=
  107. DRb::DRbServerNotFound
  108. DRb::DRbSSLSocket
  109. DRb::DRbSSLSocket::new
  110. DRb::DRbSSLSocket::open
  111. DRb::DRbSSLSocket::open_server
  112. DRb::DRbSSLSocket::SSLConfig
  113. DRb::DRbSSLSocket::SSLConfig::new
  114. DRb::DRbSSLSocket::SSLConfig#[]
  115. DRb::DRbSSLSocket::SSLConfig#accept
  116. DRb::DRbSSLSocket::SSLConfig#connect
  117. DRb::DRbSSLSocket::SSLConfig#setup_certificate
  118. DRb::DRbSSLSocket::SSLConfig#setup_ssl_context
  119. DRb::DRbTCPSocket
  120. DRb::DRbUndumped
  121. DRb::DRbUNIXSocket
  122. DRb::DRbUnknown
  123. DRb::DRbUnknown#buf
  124. DRb::DRbUnknown#name
  125. DRb::DRbUnknown::new
  126. DRb::DRbUnknown#exception
  127. DRb::DRbUnknown#reload
  128. DRb::DRbUnknownError
  129. DRb::DRbUnknownError#unknown
  130. DRb::DRbUnknownError::new
  131. DRb::ExtServ
  132. DRb::ExtServ#server
  133. DRb::ExtServ::new
  134. DRb::ExtServ#alive?
  135. DRb::ExtServ#front
  136. DRb::ExtServ#stop_service
  137. DRb::ExtServManager
  138. DRb::ExtServManager#uri
  139. DRb::ExtServManager::command
  140. DRb::ExtServManager::command=
  141. DRb::ExtServManager::new
  142. DRb::ExtServManager#invoke_service
  143. DRb::ExtServManager#invoke_service_command
  144. DRb::ExtServManager#invoke_thread
  145. DRb::ExtServManager#regist
  146. DRb::ExtServManager#service
  147. DRb::ExtServManager#unregist
  148. DRb::GW
  149. DRb::GW::new
  150. DRb::GW#[]
  151. DRb::GW#[]=
  152. DRb::GWIdConv
  153. DRb::ThreadObject
  154. DRb::ThreadObject::new
  155. DRb::ThreadObject#alive?
  156. DRb::ThreadObject#kill
  157. DRb::ThreadObject#method_missing
  158. DRb::TimerIdConv
  159. DRb::TimerIdConv::new
  160. DRb::WeakIdConv
  161. DRb::WeakIdConv::new
  162. DRb::WeakIdConv::WeakSet
  163. DRb::WeakIdConv::WeakSet::new
  164. DRb::WeakIdConv::WeakSet#add
  165. DRb::WeakIdConv::WeakSet#fetch
  166. Rinda
  167. Rinda::DRbObjectTemplate
  168. Rinda::DRbObjectTemplate::new
  169. Rinda::DRbObjectTemplate#===
  170. Rinda::InvalidHashTupleKey
  171. Rinda::NotifyTemplateEntry
  172. Rinda::NotifyTemplateEntry::new
  173. Rinda::NotifyTemplateEntry#each
  174. Rinda::NotifyTemplateEntry#notify
  175. Rinda::NotifyTemplateEntry#pop
  176. Rinda::RequestCanceledError
  177. Rinda::RequestExpiredError
  178. Rinda::RindaError
  179. Rinda::RingFinger
  180. Rinda::RingFinger#broadcast_list
  181. Rinda::RingFinger#multicast_hops
  182. Rinda::RingFinger#multicast_interface
  183. Rinda::RingFinger#port
  184. Rinda::RingFinger#primary
  185. Rinda::RingFinger::finger
  186. Rinda::RingFinger::new
  187. Rinda::RingFinger::primary
  188. Rinda::RingFinger::to_a
  189. Rinda::RingFinger#each
  190. Rinda::RingFinger#lookup_ring
  191. Rinda::RingFinger#lookup_ring_any
  192. Rinda::RingFinger#to_a
  193. Rinda::RingProvider
  194. Rinda::RingProvider::new
  195. Rinda::RingProvider#provide
  196. Rinda::RingServer
  197. Rinda::RingServer::new
  198. Rinda::RingServer#do_reply
  199. Rinda::RingServer#do_write
  200. Rinda::RingServer#make_socket
  201. Rinda::RingServer#reply_service
  202. Rinda::RingServer#shutdown
  203. Rinda::RingServer#write_services
  204. Rinda::SimpleRenewer
  205. Rinda::SimpleRenewer::new
  206. Rinda::SimpleRenewer#renew
  207. Rinda::Template
  208. Rinda::Template#===
  209. Rinda::Template#match
  210. Rinda::TemplateEntry
  211. Rinda::TemplateEntry#===
  212. Rinda::TemplateEntry#match
  213. Rinda::Tuple
  214. Rinda::Tuple::new
  215. Rinda::Tuple#[]
  216. Rinda::Tuple#each
  217. Rinda::Tuple#fetch
  218. Rinda::Tuple#hash?
  219. Rinda::Tuple#init_with_ary
  220. Rinda::Tuple#init_with_hash
  221. Rinda::Tuple#size
  222. Rinda::Tuple#value
  223. Rinda::TupleBag
  224. Rinda::TupleBag#bin_for_find
  225. Rinda::TupleBag#bin_key
  226. Rinda::TupleBag#delete
  227. Rinda::TupleBag#delete_unless_alive
  228. Rinda::TupleBag#each_entry
  229. Rinda::TupleBag#find
  230. Rinda::TupleBag#find_all
  231. Rinda::TupleBag#find_all_template
  232. Rinda::TupleBag#has_expires?
  233. Rinda::TupleBag#push
  234. Rinda::TupleBag::TupleBin
  235. Rinda::TupleBag::TupleBin::new
  236. Rinda::TupleBag::TupleBin#add
  237. Rinda::TupleBag::TupleBin#delete
  238. Rinda::TupleBag::TupleBin#find
  239. Rinda::TupleEntry
  240. Rinda::TupleEntry#expires
  241. Rinda::TupleEntry::new
  242. Rinda::TupleEntry#[]
  243. Rinda::TupleEntry#alive?
  244. Rinda::TupleEntry#cancel
  245. Rinda::TupleEntry#canceled?
  246. Rinda::TupleEntry#expired?
  247. Rinda::TupleEntry#fetch
  248. Rinda::TupleEntry#get_renewer
  249. Rinda::TupleEntry#make_expires
  250. Rinda::TupleEntry#make_tuple
  251. Rinda::TupleEntry#renew
  252. Rinda::TupleEntry#size
  253. Rinda::TupleEntry#value
  254. Rinda::TupleSpace
  255. Rinda::TupleSpace::new
  256. Rinda::TupleSpace#create_entry
  257. Rinda::TupleSpace#keep_clean
  258. Rinda::TupleSpace#move
  259. Rinda::TupleSpace#need_keeper?
  260. Rinda::TupleSpace#notify
  261. Rinda::TupleSpace#notify_event
  262. Rinda::TupleSpace#read
  263. Rinda::TupleSpace#read_all
  264. Rinda::TupleSpace#start_keeper
  265. Rinda::TupleSpace#take
  266. Rinda::TupleSpace#write
  267. Rinda::TupleSpaceProxy
  268. Rinda::TupleSpaceProxy::new
  269. Rinda::TupleSpaceProxy#notify
  270. Rinda::TupleSpaceProxy#read
  271. Rinda::TupleSpaceProxy#read_all
  272. Rinda::TupleSpaceProxy#take
  273. Rinda::TupleSpaceProxy#write
  274. Rinda::WaitTemplateEntry
  275. Rinda::WaitTemplateEntry#found
  276. Rinda::WaitTemplateEntry::new
  277. Rinda::WaitTemplateEntry#cancel
  278. Rinda::WaitTemplateEntry#read
  279. Rinda::WaitTemplateEntry#signal
  280. Rinda::WaitTemplateEntry#wait

Socket

  1. Addrinfo
  2. Addrinfo::foreach
  3. Addrinfo::getaddrinfo
  4. Addrinfo::ip
  5. Addrinfo::new
  6. Addrinfo::tcp
  7. Addrinfo::udp
  8. Addrinfo::unix
  9. Addrinfo#afamily
  10. Addrinfo#bind
  11. Addrinfo#canonname
  12. Addrinfo#connect
  13. Addrinfo#connect_from
  14. Addrinfo#connect_internal
  15. Addrinfo#connect_to
  16. Addrinfo#family_addrinfo
  17. Addrinfo#getnameinfo
  18. Addrinfo#inspect
  19. Addrinfo#inspect_sockaddr
  20. Addrinfo#ip?
  21. Addrinfo#ip_address
  22. Addrinfo#ip_port
  23. Addrinfo#ip_unpack
  24. Addrinfo#ipv4?
  25. Addrinfo#ipv4_loopback?
  26. Addrinfo#ipv4_multicast?
  27. Addrinfo#ipv4_private?
  28. Addrinfo#ipv6?
  29. Addrinfo#ipv6_linklocal?
  30. Addrinfo#ipv6_loopback?
  31. Addrinfo#ipv6_mc_global?
  32. Addrinfo#ipv6_mc_linklocal?
  33. Addrinfo#ipv6_mc_nodelocal?
  34. Addrinfo#ipv6_mc_orglocal?
  35. Addrinfo#ipv6_mc_sitelocal?
  36. Addrinfo#ipv6_multicast?
  37. Addrinfo#ipv6_sitelocal?
  38. Addrinfo#ipv6_to_ipv4
  39. Addrinfo#ipv6_unique_local?
  40. Addrinfo#ipv6_unspecified?
  41. Addrinfo#ipv6_v4compat?
  42. Addrinfo#ipv6_v4mapped?
  43. Addrinfo#listen
  44. Addrinfo#pfamily
  45. Addrinfo#protocol
  46. Addrinfo#socktype
  47. Addrinfo#to_s
  48. Addrinfo#to_sockaddr
  49. Addrinfo#unix?
  50. Addrinfo#unix_path
  51. BasicSocket
  52. BasicSocket::do_not_reverse_lookup
  53. BasicSocket::do_not_reverse_lookup=
  54. BasicSocket::for_fd
  55. BasicSocket#close_read
  56. BasicSocket#close_write
  57. BasicSocket#connect_address
  58. BasicSocket#do_not_reverse_lookup
  59. BasicSocket#do_not_reverse_lookup=
  60. BasicSocket#getpeereid
  61. BasicSocket#getpeername
  62. BasicSocket#getsockname
  63. BasicSocket#getsockopt
  64. BasicSocket#local_address
  65. BasicSocket#recv
  66. BasicSocket#recv_nonblock
  67. BasicSocket#recvmsg
  68. BasicSocket#recvmsg_nonblock
  69. BasicSocket#remote_address
  70. BasicSocket#send
  71. BasicSocket#sendmsg
  72. BasicSocket#sendmsg_nonblock
  73. BasicSocket#setsockopt
  74. BasicSocket#shutdown
  75. IPSocket
  76. IPSocket::getaddress
  77. IPSocket::getaddress_orig
  78. IPSocket::valid_v6?
  79. IPSocket#addr
  80. IPSocket#inspect
  81. IPSocket#peeraddr
  82. IPSocket#recvfrom
  83. Socket
  84. Socket::accept_loop
  85. Socket::getaddrinfo
  86. Socket::gethostbyaddr
  87. Socket::gethostbyname
  88. Socket::gethostname
  89. Socket::getifaddrs
  90. Socket::getnameinfo
  91. Socket::getservbyname
  92. Socket::getservbyport
  93. Socket::ip_address_list
  94. Socket::new
  95. Socket::pack_sockaddr_in
  96. Socket::pack_sockaddr_un
  97. Socket::pair
  98. Socket::sockaddr_in
  99. Socket::sockaddr_un
  100. Socket::socketpair
  101. Socket::tcp
  102. Socket::tcp_server_loop
  103. Socket::tcp_server_sockets
  104. Socket::udp_server_loop
  105. Socket::udp_server_loop_on
  106. Socket::udp_server_recv
  107. Socket::udp_server_sockets
  108. Socket::unix
  109. Socket::unix_server_loop
  110. Socket::unix_server_socket
  111. Socket::unix_socket_abstract_name?
  112. Socket::unpack_sockaddr_in
  113. Socket::unpack_sockaddr_un
  114. Socket#accept
  115. Socket#accept_nonblock
  116. Socket#bind
  117. Socket#connect
  118. Socket#connect_nonblock
  119. Socket#ipv6only!
  120. Socket#listen
  121. Socket#recvfrom
  122. Socket#recvfrom_nonblock
  123. Socket#sysaccept
  124. Socket::AncillaryData
  125. Socket::AncillaryData::int
  126. Socket::AncillaryData::ip_pktinfo
  127. Socket::AncillaryData::ipv6_pktinfo
  128. Socket::AncillaryData::new
  129. Socket::AncillaryData::unix_rights
  130. Socket::AncillaryData#cmsg_is?
  131. Socket::AncillaryData#data
  132. Socket::AncillaryData#family
  133. Socket::AncillaryData#inspect
  134. Socket::AncillaryData#int
  135. Socket::AncillaryData#ip_pktinfo
  136. Socket::AncillaryData#ipv6_pktinfo
  137. Socket::AncillaryData#ipv6_pktinfo_addr
  138. Socket::AncillaryData#ipv6_pktinfo_ifindex
  139. Socket::AncillaryData#level
  140. Socket::AncillaryData#timestamp
  141. Socket::AncillaryData#type
  142. Socket::AncillaryData#unix_rights
  143. Socket::Constants
  144. Socket::Ifaddr
  145. Socket::Ifaddr#addr
  146. Socket::Ifaddr#broadaddr
  147. Socket::Ifaddr#dstaddr
  148. Socket::Ifaddr#flags
  149. Socket::Ifaddr#ifindex
  150. Socket::Ifaddr#inspect
  151. Socket::Ifaddr#name
  152. Socket::Ifaddr#netmask
  153. Socket::Ifaddr#vhid
  154. Socket::Option
  155. Socket::Option::bool
  156. Socket::Option::byte
  157. Socket::Option::int
  158. Socket::Option::ipv4_multicast_loop
  159. Socket::Option::ipv4_multicast_ttl
  160. Socket::Option::linger
  161. Socket::Option::new
  162. Socket::Option#bool
  163. Socket::Option#byte
  164. Socket::Option#data
  165. Socket::Option#family
  166. Socket::Option#inspect
  167. Socket::Option#int
  168. Socket::Option#ipv4_multicast_loop
  169. Socket::Option#ipv4_multicast_ttl
  170. Socket::Option#level
  171. Socket::Option#linger
  172. Socket::Option#optname
  173. Socket::Option#to_s
  174. Socket::Option#unpack
  175. Socket::UDPSource
  176. Socket::UDPSource#local_address
  177. Socket::UDPSource#remote_address
  178. Socket::UDPSource::new
  179. Socket::UDPSource#reply
  180. SOCKSSocket
  181. SOCKSSocket::new
  182. SOCKSSocket#close
  183. TCPServer
  184. TCPServer::new
  185. TCPServer#accept
  186. TCPServer#accept_nonblock
  187. TCPServer#listen
  188. TCPServer#sysaccept
  189. TCPSocket
  190. TCPSocket::gethostbyname
  191. TCPSocket::new
  192. UDPSocket
  193. UDPSocket::new
  194. UDPSocket#bind
  195. UDPSocket#connect
  196. UDPSocket#recvfrom_nonblock
  197. UDPSocket#send
  198. UNIXServer
  199. UNIXServer::new
  200. UNIXServer#accept
  201. UNIXServer#accept_nonblock
  202. UNIXServer#listen
  203. UNIXServer#sysaccept
  204. UNIXSocket
  205. UNIXSocket::new
  206. UNIXSocket::pair
  207. UNIXSocket::socketpair
  208. UNIXSocket#addr
  209. UNIXSocket#path
  210. UNIXSocket#peeraddr
  211. UNIXSocket#recv_io
  212. UNIXSocket#recvfrom
  213. UNIXSocket#send_io

ARGF

  1. ARGF
  2. ARGF#argv
  3. ARGF#binmode
  4. ARGF#binmode?
  5. ARGF#close
  6. ARGF#closed?
  7. ARGF#each
  8. ARGF#each_byte
  9. ARGF#each_char
  10. ARGF#each_codepoint
  11. ARGF#each_line
  12. ARGF#eof
  13. ARGF#eof?
  14. ARGF#external_encoding
  15. ARGF#file
  16. ARGF#filename
  17. ARGF#fileno
  18. ARGF#getbyte
  19. ARGF#getc
  20. ARGF#gets
  21. ARGF#inplace_mode
  22. ARGF#inplace_mode=
  23. ARGF#inspect
  24. ARGF#internal_encoding
  25. ARGF#lineno
  26. ARGF#lineno=
  27. ARGF#path
  28. ARGF#pos
  29. ARGF#pos=
  30. ARGF#print
  31. ARGF#printf
  32. ARGF#putc
  33. ARGF#puts
  34. ARGF#read
  35. ARGF#read_nonblock
  36. ARGF#readbyte
  37. ARGF#readchar
  38. ARGF#readline
  39. ARGF#readlines
  40. ARGF#readpartial
  41. ARGF#rewind
  42. ARGF#seek
  43. ARGF#set_encoding
  44. ARGF#skip
  45. ARGF#tell
  46. ARGF#to_a
  47. ARGF#to_i
  48. ARGF#to_io
  49. ARGF#to_s
  50. ARGF#to_write_io
  51. ARGF#write

Errors

  1. ArgumentError
  2. ClosedQueueError
  3. EncodingError
  4. EOFError
  5. Errno
  6. fatal
  7. FiberError
  8. FloatDomainError
  9. FrozenError
  10. FrozenError::new
  11. FrozenError#receiver
  12. IndexError
  13. Interrupt
  14. IOError
  15. KeyError
  16. KeyError::new
  17. KeyError#key
  18. KeyError#receiver
  19. LoadError
  20. LoadError#path
  21. LocalJumpError
  22. LocalJumpError#exit_value
  23. LocalJumpError#reason
  24. NameError
  25. NameError::new
  26. NameError#local_variables
  27. NameError#name
  28. NameError#receiver
  29. NoMatchingPatternKeyError
  30. NoMatchingPatternKeyError::new
  31. NoMatchingPatternKeyError#key
  32. NoMatchingPatternKeyError#matchee
  33. NoMemoryError
  34. NoMethodError
  35. NoMethodError::new
  36. NoMethodError#args
  37. NoMethodError#private_call?
  38. NotImplementedError
  39. RangeError
  40. RegexpError
  41. RuntimeError
  42. ScriptError
  43. SecurityError
  44. SignalException
  45. SignalException::new
  46. SignalException#signo
  47. SocketError
  48. StandardError
  49. StopIteration
  50. StopIteration#result
  51. SyntaxError
  52. SyntaxError::new
  53. SystemCallError
  54. SystemCallError::===
  55. SystemCallError::new
  56. SystemCallError#errno
  57. SystemExit
  58. SystemExit::new
  59. SystemExit#status
  60. SystemExit#success?
  61. SystemStackError
  62. ThreadError
  63. TypeError
  64. UncaughtThrowError
  65. UncaughtThrowError::new
  66. UncaughtThrowError#tag
  67. UncaughtThrowError#to_s
  68. UncaughtThrowError#value
  69. ZeroDivisionError

Array

  1. Array
  2. Array::[]
  3. Array::new
  4. Array::try_convert
  5. Array#&
  6. Array#*
  7. Array#+
  8. Array#-
  9. Array#<<
  10. Array#<=>
  11. Array#==
  12. Array#[]
  13. Array#[]=
  14. Array#|
  15. Array#abbrev
  16. Array#all?
  17. Array#any?
  18. Array#append
  19. Array#assoc
  20. Array#at
  21. Array#bsearch
  22. Array#bsearch_index
  23. Array#clear
  24. Array#collect
  25. Array#collect!
  26. Array#combination
  27. Array#compact
  28. Array#compact!
  29. Array#concat
  30. Array#count
  31. Array#cycle
  32. Array#deconstruct
  33. Array#delete
  34. Array#delete_at
  35. Array#delete_if
  36. Array#difference
  37. Array#dig
  38. Array#drop
  39. Array#drop_while
  40. Array#each
  41. Array#each_index
  42. Array#empty?
  43. Array#eql?
  44. Array#fetch
  45. Array#fill
  46. Array#filter
  47. Array#filter!
  48. Array#find_index
  49. Array#first
  50. Array#flatten
  51. Array#flatten!
  52. Array#hash
  53. Array#include?
  54. Array#index
  55. Array#initialize_copy
  56. Array#insert
  57. Array#inspect
  58. Array#intersect?
  59. Array#intersection
  60. Array#join
  61. Array#keep_if
  62. Array#last
  63. Array#length
  64. Array#map
  65. Array#map!
  66. Array#max
  67. Array#min
  68. Array#minmax
  69. Array#none?
  70. Array#one?
  71. Array#pack
  72. Array#permutation
  73. Array#pop
  74. Array#prepend
  75. Array#product
  76. Array#push
  77. Array#rassoc
  78. Array#reject
  79. Array#reject!
  80. Array#repeated_combination
  81. Array#repeated_permutation
  82. Array#replace
  83. Array#reverse
  84. Array#reverse!
  85. Array#reverse_each
  86. Array#rindex
  87. Array#rotate
  88. Array#rotate!
  89. Array#sample
  90. Array#select
  91. Array#select!
  92. Array#shelljoin
  93. Array#shift
  94. Array#shuffle
  95. Array#shuffle!
  96. Array#size
  97. Array#slice
  98. Array#slice!
  99. Array#sort
  100. Array#sort!
  101. Array#sort_by!
  102. Array#sum
  103. Array#take
  104. Array#take_while
  105. Array#to_a
  106. Array#to_ary
  107. Array#to_h
  108. Array#to_s
  109. Array#transpose
  110. Array#union
  111. Array#uniq
  112. Array#uniq!
  113. Array#unshift
  114. Array#values_at
  115. Array#zip

Base64

  1. Base64
  2. Base64#decode64
  3. Base64#encode64
  4. Base64#strict_decode64
  5. Base64#strict_encode64
  6. Base64#urlsafe_decode64
  7. Base64#urlsafe_encode64

BasicObject

  1. BasicObject
  2. BasicObject::new
  3. BasicObject#!
  4. BasicObject#!=
  5. BasicObject#==
  6. BasicObject#equal?
  7. BasicObject#instance_eval
  8. BasicObject#instance_exec
  9. BasicObject#method_missing
  10. BasicObject#singleton_method_added
  11. BasicObject#singleton_method_removed
  12. BasicObject#singleton_method_undefined

Benchmark

  1. Benchmark
  2. Benchmark::benchmark
  3. Benchmark::bm
  4. Benchmark::bmbm
  5. Benchmark::measure
  6. Benchmark::realtime
  7. Benchmark#benchmark
  8. Benchmark#bm
  9. Benchmark#bmbm
  10. Benchmark#measure
  11. Benchmark#realtime
  12. Benchmark::Tms
  13. Benchmark::Tms#cstime
  14. Benchmark::Tms#cutime
  15. Benchmark::Tms#label
  16. Benchmark::Tms#real
  17. Benchmark::Tms#stime
  18. Benchmark::Tms#total
  19. Benchmark::Tms#utime
  20. Benchmark::Tms::new
  21. Benchmark::Tms#*
  22. Benchmark::Tms#+
  23. Benchmark::Tms#-
  24. Benchmark::Tms#/
  25. Benchmark::Tms#add
  26. Benchmark::Tms#add!
  27. Benchmark::Tms#format
  28. Benchmark::Tms#memberwise
  29. Benchmark::Tms#to_a
  30. Benchmark::Tms#to_h
  31. Benchmark::Tms#to_s

BigDecimal

  1. BigDecimal
  2. BigDecimal::double_fig
  3. BigDecimal::interpret_loosely
  4. BigDecimal::json_create
  5. BigDecimal::limit
  6. BigDecimal::mode
  7. BigDecimal::save_exception_mode
  8. BigDecimal::save_limit
  9. BigDecimal::save_rounding_mode
  10. BigDecimal#%
  11. BigDecimal#*
  12. BigDecimal#**
  13. BigDecimal#+
  14. BigDecimal#+@
  15. BigDecimal#-
  16. BigDecimal#-@
  17. BigDecimal#/
  18. BigDecimal#<
  19. BigDecimal#<=
  20. BigDecimal#<=>
  21. BigDecimal#==
  22. BigDecimal#===
  23. BigDecimal#>
  24. BigDecimal#>=
  25. BigDecimal#abs
  26. BigDecimal#add
  27. BigDecimal#as_json
  28. BigDecimal#ceil
  29. BigDecimal#clone
  30. BigDecimal#coerce
  31. BigDecimal#div
  32. BigDecimal#divmod
  33. BigDecimal#dup
  34. BigDecimal#eql?
  35. BigDecimal#exponent
  36. BigDecimal#finite?
  37. BigDecimal#fix
  38. BigDecimal#floor
  39. BigDecimal#frac
  40. BigDecimal#hash
  41. BigDecimal#infinite?
  42. BigDecimal#inspect
  43. BigDecimal#modulo
  44. BigDecimal#mult
  45. BigDecimal#n_significant_digits
  46. BigDecimal#nan?
  47. BigDecimal#nonzero?
  48. BigDecimal#power
  49. BigDecimal#precision
  50. BigDecimal#precision_scale
  51. BigDecimal#precs
  52. BigDecimal#quo
  53. BigDecimal#remainder
  54. BigDecimal#round
  55. BigDecimal#scale
  56. BigDecimal#sign
  57. BigDecimal#split
  58. BigDecimal#sqrt
  59. BigDecimal#sub
  60. BigDecimal#to_d
  61. BigDecimal#to_digits
  62. BigDecimal#to_f
  63. BigDecimal#to_i
  64. BigDecimal#to_int
  65. BigDecimal#to_json
  66. BigDecimal#to_r
  67. BigDecimal#to_s
  68. BigDecimal#truncate
  69. BigDecimal#zero?
  70. BigMath
  71. BigMath::exp
  72. BigMath::log
  73. BigMath#E
  74. BigMath#PI
  75. BigMath#atan
  76. BigMath#cos
  77. BigMath#sin
  78. BigMath#sqrt
  79. Jacobian
  80. Jacobian#dfdxi
  81. Jacobian#isEqual
  82. Jacobian#jacobian
  83. LUSolve
  84. LUSolve#ludecomp
  85. LUSolve#lusolve
  86. Newton
  87. Newton#nlsolve

Language

  1. Binary Searching
  2. Руководство по устранению ошибок
  3. Case Mapping
  4. Dig Methods
  5. Documentation Guide
  6. Предварительно определенные глобальные переменные
  7. Implicit Conversions
  8. Keywords
  9. Marshal Format
  10. Ruby Security
  11. Caveats для реализации обратных вызовов Signal.trap.
  12. Assignment
  13. Calling Methods
  14. Code Comments
  15. Control Expressions
  16. Exception Handling
  17. Literals
  18. Methods
  19. Miscellaneous Syntax
  20. Modules
  21. Pattern matching
  22. Precedence
  23. Refinements

Binding

  1. Binding
  2. Binding#eval
  3. Binding#irb
  4. Binding#local_variable_defined?
  5. Binding#local_variable_get
  6. Binding#local_variable_set
  7. Binding#local_variables
  8. Binding#receiver
  9. Binding#source_location

Syntax

  1. break
  2. case
  3. for
  4. if
  5. next
  6. redo
  7. unless
  8. until
  9. while
  10. END
  11. alias
  12. defined?
  13. undef

Bundler

  1. Bundler
  2. Bundler::app_cache
  3. Bundler::app_config_path
  4. Bundler::bin_path
  5. Bundler::bundle_path
  6. Bundler::clean_env
  7. Bundler::clean_exec
  8. Bundler::clean_system
  9. Bundler::clear_gemspec_cache
  10. Bundler::configure
  11. Bundler::configure_gem_home
  12. Bundler::configure_gem_home_and_path
  13. Bundler::configure_gem_path
  14. Bundler::configured_bundle_path
  15. Bundler::default_bundle_dir
  16. Bundler::default_gemfile
  17. Bundler::default_lockfile
  18. Bundler::definition
  19. Bundler::environment
  20. Bundler::eval_gemspec
  21. Bundler::eval_yaml_gemspec
  22. Bundler::feature_flag
  23. Bundler::frozen_bundle?
  24. Bundler::git_present?
  25. Bundler::home
  26. Bundler::install_path
  27. Bundler::load
  28. Bundler::load_gemspec
  29. Bundler::load_gemspec_uncached
  30. Bundler::load_marshal
  31. Bundler::local_platform
  32. Bundler::locked_gems
  33. Bundler::mkdir_p
  34. Bundler::most_specific_locked_platform?
  35. Bundler::original_env
  36. Bundler::original_exec
  37. Bundler::original_system
  38. Bundler::preferred_gemfile_name
  39. Bundler::read_file
  40. Bundler::require
  41. Bundler::requires_sudo?
  42. Bundler::reset!
  43. Bundler::reset_paths!
  44. Bundler::reset_rubygems!
  45. Bundler::reset_settings_and_root!
  46. Bundler::rm_rf
  47. Bundler::root
  48. Bundler::ruby_scope
  49. Bundler::self_manager
  50. Bundler::settings
  51. Bundler::setup
  52. Bundler::specs_path
  53. Bundler::sudo
  54. Bundler::system_bindir
  55. Bundler::tmp
  56. Bundler::tmp_home_path
  57. Bundler::ui
  58. Bundler::ui=
  59. Bundler::unbundled_env
  60. Bundler::unbundled_exec
  61. Bundler::unbundled_system
  62. Bundler::use_system_gems?
  63. Bundler::user_bundle_path
  64. Bundler::user_cache
  65. Bundler::user_home
  66. Bundler::which
  67. Bundler::with_clean_env
  68. Bundler::with_env
  69. Bundler::with_original_env
  70. Bundler::with_unbundled_env

CGI

  1. CGI
  2. CGI#accept_charset
  3. CGI::accept_charset
  4. CGI::accept_charset=
  5. CGI::new
  6. CGI::parse
  7. CGI#env_table
  8. CGI#header
  9. CGI#http_header
  10. CGI#out
  11. CGI#print
  12. CGI#stdinput
  13. CGI#stdoutput
  14. CGI::Cookie
  15. CGI::Cookie#domain
  16. CGI::Cookie#expires
  17. CGI::Cookie#httponly
  18. CGI::Cookie#name
  19. CGI::Cookie#path
  20. CGI::Cookie#secure
  21. CGI::Cookie::new
  22. CGI::Cookie::parse
  23. CGI::Cookie#httponly=
  24. CGI::Cookie#inspect
  25. CGI::Cookie#secure=
  26. CGI::Cookie#to_s
  27. CGI::Cookie#value
  28. CGI::Cookie#value=
  29. CGI::Escape
  30. CGI::Escape#escape
  31. CGI::Escape#escapeHTML
  32. CGI::Escape#unescape
  33. CGI::Escape#unescapeHTML
  34. CGI::HtmlExtension
  35. CGI::HtmlExtension#a
  36. CGI::HtmlExtension#base
  37. CGI::HtmlExtension#blockquote
  38. CGI::HtmlExtension#caption
  39. CGI::HtmlExtension#checkbox
  40. CGI::HtmlExtension#checkbox_group
  41. CGI::HtmlExtension#file_field
  42. CGI::HtmlExtension#form
  43. CGI::HtmlExtension#hidden
  44. CGI::HtmlExtension#html
  45. CGI::HtmlExtension#image_button
  46. CGI::HtmlExtension#img
  47. CGI::HtmlExtension#multipart_form
  48. CGI::HtmlExtension#password_field
  49. CGI::HtmlExtension#popup_menu
  50. CGI::HtmlExtension#radio_button
  51. CGI::HtmlExtension#radio_group
  52. CGI::HtmlExtension#reset
  53. CGI::HtmlExtension#scrolling_list
  54. CGI::HtmlExtension#submit
  55. CGI::HtmlExtension#text_field
  56. CGI::HtmlExtension#textarea
  57. CGI::InvalidEncoding
  58. CGI::QueryExtension
  59. CGI::QueryExtension#cookies
  60. CGI::QueryExtension#files
  61. CGI::QueryExtension#params
  62. CGI::QueryExtension#[]
  63. CGI::QueryExtension#has_key?
  64. CGI::QueryExtension#include?
  65. CGI::QueryExtension#initialize_query
  66. CGI::QueryExtension#key?
  67. CGI::QueryExtension#keys
  68. CGI::QueryExtension#multipart?
  69. CGI::QueryExtension#params=
  70. CGI::QueryExtension#raw_cookie
  71. CGI::QueryExtension#raw_cookie2
  72. CGI::QueryExtension#read_from_cmdline
  73. CGI::QueryExtension#read_multipart
  74. CGI::Session
  75. CGI::Session#new_session
  76. CGI::Session#session_id
  77. CGI::Session::new
  78. CGI::Session#[]
  79. CGI::Session#[]=
  80. CGI::Session#close
  81. CGI::Session#create_new_id
  82. CGI::Session#delete
  83. CGI::Session#update
  84. CGI::Session::FileStore
  85. CGI::Session::FileStore::new
  86. CGI::Session::FileStore#close
  87. CGI::Session::FileStore#delete
  88. CGI::Session::FileStore#restore
  89. CGI::Session::FileStore#update
  90. CGI::Session::MemoryStore
  91. CGI::Session::MemoryStore::new
  92. CGI::Session::MemoryStore#close
  93. CGI::Session::MemoryStore#delete
  94. CGI::Session::MemoryStore#restore
  95. CGI::Session::MemoryStore#update
  96. CGI::Session::NullStore
  97. CGI::Session::NullStore::new
  98. CGI::Session::NullStore#close
  99. CGI::Session::NullStore#delete
  100. CGI::Session::NullStore#restore
  101. CGI::Session::NullStore#update
  102. CGI::Session::PStore
  103. CGI::Session::PStore::new
  104. CGI::Session::PStore#close
  105. CGI::Session::PStore#delete
  106. CGI::Session::PStore#restore
  107. CGI::Session::PStore#update
  108. CGI::Util
  109. CGI::Util#escape
  110. CGI::Util#escapeElement
  111. CGI::Util#escapeHTML
  112. CGI::Util#escape_element
  113. CGI::Util#escape_html
  114. CGI::Util#h
  115. CGI::Util#pretty
  116. CGI::Util#rfc1123_date
  117. CGI::Util#unescape
  118. CGI::Util#unescapeElement
  119. CGI::Util#unescapeHTML
  120. CGI::Util#unescape_element
  121. CGI::Util#unescape_html

Class

  1. Class
  2. Class::new
  3. Class#allocate
  4. Class#inherited
  5. Class#json_creatable?
  6. Class#new
  7. Class#subclasses
  8. Class#superclass

Comparable

  1. Comparable
  2. Comparable#<
  3. Comparable#<=
  4. Comparable#==
  5. Comparable#>
  6. Comparable#>=
  7. Comparable#between?
  8. Comparable#clamp

Complex

  1. Complex
  2. Complex::json_create
  3. Complex::polar
  4. Complex::rect
  5. Complex::rectangular
  6. Complex#*
  7. Complex#**
  8. Complex#+
  9. Complex#-
  10. Complex#-@
  11. Complex#/
  12. Complex#<=>
  13. Complex#==
  14. Complex#abs
  15. Complex#abs2
  16. Complex#angle
  17. Complex#arg
  18. Complex#as_json
  19. Complex#conj
  20. Complex#conjugate
  21. Complex#denominator
  22. Complex#fdiv
  23. Complex#finite?
  24. Complex#hash
  25. Complex#imag
  26. Complex#imaginary
  27. Complex#infinite?
  28. Complex#inspect
  29. Complex#magnitude
  30. Complex#numerator
  31. Complex#phase
  32. Complex#polar
  33. Complex#quo
  34. Complex#rationalize
  35. Complex#real
  36. Complex#real?
  37. Complex#rect
  38. Complex#rectangular
  39. Complex#to_c
  40. Complex#to_d
  41. Complex#to_f
  42. Complex#to_i
  43. Complex#to_json
  44. Complex#to_r
  45. Complex#to_s

CoreExtensions

  1. CoreExtensions::TCPSocketExt
  2. CoreExtensions::TCPSocketExt::prepended
  3. CoreExtensions::TCPSocketExt::Initializer
  4. CoreExtensions::TCPSocketExt::Initializer::new

Coverage

  1. Coverage
  2. Coverage::line_stub
  3. Coverage::peek_result
  4. Coverage::result
  5. Coverage::resume
  6. Coverage::running?
  7. Coverage::setup
  8. Coverage::start
  9. Coverage::state
  10. Coverage::suspend

CSV

  1. CSV
  2. CSV#encoding
  3. CSV::filter
  4. CSV::foreach
  5. CSV::generate
  6. CSV::generate_line
  7. CSV::instance
  8. CSV::new
  9. CSV::open
  10. CSV::parse
  11. CSV::parse_line
  12. CSV::read
  13. CSV::readlines
  14. CSV::table
  15. CSV#<<
  16. CSV#add_row
  17. CSV#binmode?
  18. CSV#build_fields_converter
  19. CSV#build_header_fields_converter
  20. CSV#build_parser_fields_converter
  21. CSV#build_writer_fields_converter
  22. CSV#col_sep
  23. CSV#convert
  24. CSV#convert_fields
  25. CSV#converters
  26. CSV#determine_encoding
  27. CSV#each
  28. CSV#eof
  29. CSV#eof?
  30. CSV#field_size_limit
  31. CSV#flock
  32. CSV#force_quotes?
  33. CSV#gets
  34. CSV#header_convert
  35. CSV#header_converters
  36. CSV#header_fields_converter
  37. CSV#header_row?
  38. CSV#headers
  39. CSV#inspect
  40. CSV#ioctl
  41. CSV#liberal_parsing?
  42. CSV#line
  43. CSV#lineno
  44. CSV#normalize_converters
  45. CSV#parser
  46. CSV#parser_enumerator
  47. CSV#parser_fields_converter
  48. CSV#parser_options
  49. CSV#path
  50. CSV#puts
  51. CSV#quote_char
  52. CSV#raw_encoding
  53. CSV#read
  54. CSV#readline
  55. CSV#readlines
  56. CSV#return_headers?
  57. CSV#rewind
  58. CSV#row_sep
  59. CSV#shift
  60. CSV#skip_blanks?
  61. CSV#skip_lines
  62. CSV#stat
  63. CSV#to_i
  64. CSV#to_io
  65. CSV#unconverted_fields?
  66. CSV#write_headers?
  67. CSV#writer
  68. CSV#writer_fields_converter
  69. CSV#writer_options
  70. CSV::DeleteSuffix
  71. CSV::DeleteSuffix#delete_suffix
  72. CSV::FieldsConverter
  73. CSV::FieldsConverter::new
  74. CSV::FieldsConverter#add_converter
  75. CSV::FieldsConverter#builtin_converters
  76. CSV::FieldsConverter#convert
  77. CSV::FieldsConverter#each
  78. CSV::FieldsConverter#empty?
  79. CSV::FieldsConverter#need_convert?
  80. CSV::FieldsConverter#need_static_convert?
  81. CSV::InputRecordSeparator
  82. CSV::InputRecordSeparator::value
  83. CSV::MalformedCSVError
  84. CSV::MalformedCSVError#line_number
  85. CSV::MalformedCSVError#lineno
  86. CSV::MalformedCSVError::new
  87. CSV::MatchP
  88. CSV::MatchP#match?
  89. CSV::Parser
  90. CSV::Parser::new
  91. CSV::Parser#add_unconverted_fields
  92. CSV::Parser#adjust_headers
  93. CSV::Parser#build_scanner
  94. CSV::Parser#column_separator
  95. CSV::Parser#detect_row_separator
  96. CSV::Parser#emit_row
  97. CSV::Parser#field_size_limit
  98. CSV::Parser#header_row?
  99. CSV::Parser#headers
  100. CSV::Parser#ignore_broken_line
  101. CSV::Parser#last_line
  102. CSV::Parser#liberal_parsing?
  103. CSV::Parser#line
  104. CSV::Parser#lineno
  105. CSV::Parser#may_quoted?
  106. CSV::Parser#parse
  107. CSV::Parser#parse_column_end
  108. CSV::Parser#parse_column_value
  109. CSV::Parser#parse_headers
  110. CSV::Parser#parse_no_quote
  111. CSV::Parser#parse_quotable_loose
  112. CSV::Parser#parse_quotable_robust
  113. CSV::Parser#parse_quoted_column_value
  114. CSV::Parser#parse_row_end
  115. CSV::Parser#parse_unquoted_column_value
  116. CSV::Parser#prepare
  117. CSV::Parser#prepare_backslash
  118. CSV::Parser#prepare_header
  119. CSV::Parser#prepare_line
  120. CSV::Parser#prepare_parser
  121. CSV::Parser#prepare_quote_character
  122. CSV::Parser#prepare_quoted
  123. CSV::Parser#prepare_separators
  124. CSV::Parser#prepare_skip_lines
  125. CSV::Parser#prepare_strip
  126. CSV::Parser#prepare_unquoted
  127. CSV::Parser#prepare_variable
  128. CSV::Parser#quote_character
  129. CSV::Parser#resolve_row_separator
  130. CSV::Parser#return_headers?
  131. CSV::Parser#row_separator
  132. CSV::Parser#skip_blanks?
  133. CSV::Parser#skip_line?
  134. CSV::Parser#skip_lines
  135. CSV::Parser#skip_needless_lines
  136. CSV::Parser#start_row
  137. CSV::Parser#strip_value
  138. CSV::Parser#unconverted_fields?
  139. CSV::Parser#use_headers?
  140. CSV::Parser#validate_strip_and_col_sep_options
  141. CSV::Parser::InputsScanner
  142. CSV::Parser::InputsScanner::new
  143. CSV::Parser::InputsScanner#each_line
  144. CSV::Parser::InputsScanner#eos?
  145. CSV::Parser::InputsScanner#keep_back
  146. CSV::Parser::InputsScanner#keep_drop
  147. CSV::Parser::InputsScanner#keep_end
  148. CSV::Parser::InputsScanner#keep_start
  149. CSV::Parser::InputsScanner#read_chunk
  150. CSV::Parser::InputsScanner#rest
  151. CSV::Parser::InputsScanner#scan
  152. CSV::Parser::InputsScanner#scan_all
  153. CSV::Parser::InvalidEncoding
  154. CSV::Parser::Scanner
  155. CSV::Parser::Scanner::new
  156. CSV::Parser::Scanner#each_line
  157. CSV::Parser::Scanner#keep_back
  158. CSV::Parser::Scanner#keep_drop
  159. CSV::Parser::Scanner#keep_end
  160. CSV::Parser::Scanner#keep_start
  161. CSV::Parser::UnoptimizedStringIO
  162. CSV::Parser::UnoptimizedStringIO::new
  163. CSV::Parser::UnoptimizedStringIO#each_line
  164. CSV::Parser::UnoptimizedStringIO#eof?
  165. CSV::Parser::UnoptimizedStringIO#gets
  166. CSV::Row
  167. CSV::Row#row
  168. CSV::Row::new
  169. CSV::Row#<<
  170. CSV::Row#==
  171. CSV::Row#[]
  172. CSV::Row#[]=
  173. CSV::Row#delete
  174. CSV::Row#delete_if
  175. CSV::Row#dig
  176. CSV::Row#each
  177. CSV::Row#each_pair
  178. CSV::Row#fetch
  179. CSV::Row#field
  180. CSV::Row#field?
  181. CSV::Row#field_row?
  182. CSV::Row#fields
  183. CSV::Row#has_key?
  184. CSV::Row#header?
  185. CSV::Row#header_row?
  186. CSV::Row#headers
  187. CSV::Row#include?
  188. CSV::Row#index
  189. CSV::Row#initialize_copy
  190. CSV::Row#inspect
  191. CSV::Row#key?
  192. CSV::Row#member?
  193. CSV::Row#push
  194. CSV::Row#to_csv
  195. CSV::Row#to_h
  196. CSV::Row#to_hash
  197. CSV::Row#to_s
  198. CSV::Row#values_at
  199. CSV::Table
  200. CSV::Table#mode
  201. CSV::Table#table
  202. CSV::Table::new
  203. CSV::Table#<<
  204. CSV::Table#==
  205. CSV::Table#[]
  206. CSV::Table#[]=
  207. CSV::Table#by_col
  208. CSV::Table#by_col!
  209. CSV::Table#by_col_or_row
  210. CSV::Table#by_col_or_row!
  211. CSV::Table#by_row
  212. CSV::Table#by_row!
  213. CSV::Table#delete
  214. CSV::Table#delete_if
  215. CSV::Table#dig
  216. CSV::Table#each
  217. CSV::Table#headers
  218. CSV::Table#inspect
  219. CSV::Table#push
  220. CSV::Table#to_a
  221. CSV::Table#to_csv
  222. CSV::Table#to_s
  223. CSV::Table#values_at
  224. CSV::Writer
  225. CSV::Writer#headers
  226. CSV::Writer#lineno
  227. CSV::Writer::new
  228. CSV::Writer#<<
  229. CSV::Writer#prepare
  230. CSV::Writer#prepare_force_quotes_fields
  231. CSV::Writer#prepare_format
  232. CSV::Writer#prepare_header
  233. CSV::Writer#prepare_output
  234. CSV::Writer#quote
  235. CSV::Writer#quote_field
  236. CSV::Writer#rewind

Date

  1. Date
  2. Date::civil
  3. Date::commercial
  4. Date::gregorian_leap?
  5. Date::httpdate
  6. Date::iso8601
  7. Date::jd
  8. Date::jisx0301
  9. Date::json_create
  10. Date::julian_leap?
  11. Date::leap?
  12. Date::new
  13. Date::new!
  14. Date::nth_kday
  15. Date::ordinal
  16. Date::parse
  17. Date::rfc2822
  18. Date::rfc3339
  19. Date::rfc822
  20. Date::strptime
  21. Date::test_all
  22. Date::test_civil
  23. Date::test_commercial
  24. Date::test_nth_kday
  25. Date::test_ordinal
  26. Date::test_unit_conv
  27. Date::test_weeknum
  28. Date::today
  29. Date::valid_civil?
  30. Date::valid_commercial?
  31. Date::valid_date?
  32. Date::valid_jd?
  33. Date::valid_ordinal?
  34. Date::weeknum
  35. Date::xmlschema
  36. Date#+
  37. Date#-
  38. Date#<<
  39. Date#<=>
  40. Date#===
  41. Date#>>
  42. Date#ajd
  43. Date#amjd
  44. Date#as_json
  45. Date#asctime
  46. Date#ctime
  47. Date#cwday
  48. Date#cweek
  49. Date#cwyear
  50. Date#day
  51. Date#day_fraction
  52. Date#downto
  53. Date#england
  54. Date#fill
  55. Date#friday?
  56. Date#gregorian
  57. Date#gregorian?
  58. Date#hour
  59. Date#httpdate
  60. Date#infinite?
  61. Date#inspect
  62. Date#inspect_raw
  63. Date#iso8601
  64. Date#italy
  65. Date#jd
  66. Date#jisx0301
  67. Date#julian
  68. Date#julian?
  69. Date#ld
  70. Date#leap?
  71. Date#marshal_dump_old
  72. Date#mday
  73. Date#min
  74. Date#minute
  75. Date#mjd
  76. Date#mon
  77. Date#monday?
  78. Date#month
  79. Date#new_start
  80. Date#next
  81. Date#next_day
  82. Date#next_month
  83. Date#next_year
  84. Date#nth_kday?
  85. Date#prev_day
  86. Date#prev_month
  87. Date#prev_year
  88. Date#rfc2822
  89. Date#rfc3339
  90. Date#rfc822
  91. Date#saturday?
  92. Date#sec
  93. Date#second
  94. Date#start
  95. Date#step
  96. Date#strftime
  97. Date#succ
  98. Date#sunday?
  99. Date#thursday?
  100. Date#to_date
  101. Date#to_datetime
  102. Date#to_json
  103. Date#to_s
  104. Date#to_time
  105. Date#tuesday?
  106. Date#upto
  107. Date#wday
  108. Date#wednesday?
  109. Date#wnum0
  110. Date#wnum1
  111. Date#xmlschema
  112. Date#yday
  113. Date#year

DateTime

  1. DateTime
  2. DateTime::civil
  3. DateTime::commercial
  4. DateTime::httpdate
  5. DateTime::iso8601
  6. DateTime::jd
  7. DateTime::jisx0301
  8. DateTime::json_create
  9. DateTime::new
  10. DateTime::now
  11. DateTime::nth_kday
  12. DateTime::ordinal
  13. DateTime::parse
  14. DateTime::rfc2822
  15. DateTime::rfc3339
  16. DateTime::rfc822
  17. DateTime::strptime
  18. DateTime::weeknum
  19. DateTime::xmlschema
  20. DateTime#as_json
  21. DateTime#hour
  22. DateTime#iso8601
  23. DateTime#jisx0301
  24. DateTime#min
  25. DateTime#minute
  26. DateTime#new_offset
  27. DateTime#offset
  28. DateTime#rfc3339
  29. DateTime#sec
  30. DateTime#sec_fraction
  31. DateTime#second
  32. DateTime#second_fraction
  33. DateTime#strftime
  34. DateTime#to_date
  35. DateTime#to_datetime
  36. DateTime#to_json
  37. DateTime#to_s
  38. DateTime#to_time
  39. DateTime#xmlschema
  40. DateTime#zone

Delegator

  1. Delegator
  2. Delegator::new
  3. Delegator#!
  4. Delegator#!=
  5. Delegator#==
  6. Delegator#eql?
  7. Delegator#freeze
  8. Delegator#marshal_dump
  9. Delegator#marshal_load
  10. Delegator#method_missing
  11. Delegator#methods
  12. Delegator#protected_methods
  13. Delegator#public_methods
  14. Delegator#raise
  15. Delegator#respond_to_missing?
  16. Delegator#target_respond_to?
  17. SimpleDelegator

DidYouMean

  1. DidYouMean
  2. DidYouMean::correct_error
  3. DidYouMean::formatter
  4. DidYouMean::formatter=
  5. DidYouMean::spell_checkers
  6. DidYouMean::ClassNameChecker
  7. DidYouMean::ClassNameChecker#class_name
  8. DidYouMean::ClassNameChecker::new
  9. DidYouMean::ClassNameChecker#class_names
  10. DidYouMean::ClassNameChecker#corrections
  11. DidYouMean::ClassNameChecker#scopes
  12. DidYouMean::ClassNameChecker::ClassName
  13. DidYouMean::ClassNameChecker::ClassName#namespace
  14. DidYouMean::ClassNameChecker::ClassName::new
  15. DidYouMean::ClassNameChecker::ClassName#full_name
  16. DidYouMean::Correctable
  17. DidYouMean::Correctable#corrections
  18. DidYouMean::Correctable#original_message
  19. DidYouMean::Correctable#spell_checker
  20. DidYouMean::Correctable#to_s
  21. DidYouMean::VerboseFormatter
  22. DidYouMean::VerboseFormatter::message_for
  23. DidYouMean::VerboseFormatter#message_for
  24. DidYouMean::Jaro
  25. DidYouMean::Jaro#distance
  26. DidYouMean::JaroWinkler
  27. DidYouMean::JaroWinkler#distance
  28. DidYouMean::KeyErrorChecker
  29. DidYouMean::KeyErrorChecker::new
  30. DidYouMean::KeyErrorChecker#corrections
  31. DidYouMean::KeyErrorChecker#exact_matches
  32. DidYouMean::MethodNameChecker
  33. DidYouMean::MethodNameChecker#method_name
  34. DidYouMean::MethodNameChecker#receiver
  35. DidYouMean::MethodNameChecker::new
  36. DidYouMean::MethodNameChecker#corrections
  37. DidYouMean::MethodNameChecker#method_names
  38. DidYouMean::MethodNameChecker#names_to_exclude
  39. DidYouMean::NullChecker
  40. DidYouMean::NullChecker::new
  41. DidYouMean::NullChecker#corrections
  42. DidYouMean::PatternKeyNameChecker
  43. DidYouMean::PatternKeyNameChecker::new
  44. DidYouMean::PatternKeyNameChecker#corrections
  45. DidYouMean::PatternKeyNameChecker#exact_matches
  46. DidYouMean::RequirePathChecker
  47. DidYouMean::RequirePathChecker#path
  48. DidYouMean::RequirePathChecker::new
  49. DidYouMean::RequirePathChecker::requireables
  50. DidYouMean::RequirePathChecker#corrections
  51. DidYouMean::SpellChecker
  52. DidYouMean::SpellChecker::new
  53. DidYouMean::SpellChecker#correct
  54. DidYouMean::TreeSpellChecker
  55. DidYouMean::TreeSpellChecker#augment
  56. DidYouMean::TreeSpellChecker#dictionary
  57. DidYouMean::TreeSpellChecker#separator
  58. DidYouMean::TreeSpellChecker::new
  59. DidYouMean::TreeSpellChecker#correct
  60. DidYouMean::TreeSpellChecker#correct_element
  61. DidYouMean::TreeSpellChecker#dictionary_without_leaves
  62. DidYouMean::TreeSpellChecker#dimensions
  63. DidYouMean::TreeSpellChecker#fall_back_to_normal_spell_check
  64. DidYouMean::TreeSpellChecker#find_ideas
  65. DidYouMean::TreeSpellChecker#find_leaves
  66. DidYouMean::TreeSpellChecker#find_suggestions
  67. DidYouMean::TreeSpellChecker#ideas_to_paths
  68. DidYouMean::TreeSpellChecker#normalize
  69. DidYouMean::TreeSpellChecker#plausible_dimensions
  70. DidYouMean::TreeSpellChecker#possible_paths
  71. DidYouMean::TreeSpellChecker#tree_depth
  72. DidYouMean::VariableNameChecker
  73. DidYouMean::VariableNameChecker#cvar_names
  74. DidYouMean::VariableNameChecker#ivar_names
  75. DidYouMean::VariableNameChecker#lvar_names
  76. DidYouMean::VariableNameChecker#method_names
  77. DidYouMean::VariableNameChecker#name
  78. DidYouMean::VariableNameChecker::new
  79. DidYouMean::VariableNameChecker#corrections

Digest

  1. Digest
  2. Digest::bubblebabble
  3. Digest::hexencode
  4. Digest::Base
  5. Digest::Base#<<
  6. Digest::Base#block_length
  7. Digest::Base#digest_length
  8. Digest::Base#reset
  9. Digest::Base#update
  10. Digest::Class
  11. Digest::Class::base64digest
  12. Digest::Class::bubblebabble
  13. Digest::Class::digest
  14. Digest::Class::file
  15. Digest::Class::hexdigest
  16. Digest::Instance
  17. Digest::Instance#<<
  18. Digest::Instance#==
  19. Digest::Instance#base64digest
  20. Digest::Instance#base64digest!
  21. Digest::Instance#block_length
  22. Digest::Instance#bubblebabble
  23. Digest::Instance#digest
  24. Digest::Instance#digest!
  25. Digest::Instance#digest_length
  26. Digest::Instance#file
  27. Digest::Instance#finish
  28. Digest::Instance#hexdigest
  29. Digest::Instance#hexdigest!
  30. Digest::Instance#inspect
  31. Digest::Instance#length
  32. Digest::Instance#new
  33. Digest::Instance#reset
  34. Digest::Instance#size
  35. Digest::Instance#to_s
  36. Digest::Instance#update
  37. Digest::MD5
  38. Digest::RMD160
  39. Digest::SHA1
  40. Digest::SHA2
  41. Digest::SHA2::new
  42. Digest::SHA2#<<
  43. Digest::SHA2#block_length
  44. Digest::SHA2#digest_length
  45. Digest::SHA2#reset
  46. Digest::SHA2#update

Dir

  1. Dir
  2. Dir::[]
  3. Dir::chdir
  4. Dir::children
  5. Dir::chroot
  6. Dir::delete
  7. Dir::each_child
  8. Dir::empty?
  9. Dir::entries
  10. Dir::exist?
  11. Dir::foreach
  12. Dir::getwd
  13. Dir::glob
  14. Dir::home
  15. Dir::mkdir
  16. Dir::mktmpdir
  17. Dir::new
  18. Dir::open
  19. Dir::pwd
  20. Dir::rmdir
  21. Dir::tmpdir
  22. Dir::unlink
  23. Dir#children
  24. Dir#close
  25. Dir#each
  26. Dir#each_child
  27. Dir#fileno
  28. Dir#inspect
  29. Dir#path
  30. Dir#pos
  31. Dir#pos=
  32. Dir#read
  33. Dir#rewind
  34. Dir#seek
  35. Dir#tell
  36. Dir#to_path

Encoding

  1. Encoding
  2. Encoding::aliases
  3. Encoding::compatible?
  4. Encoding::default_external
  5. Encoding::default_external=
  6. Encoding::default_internal
  7. Encoding::default_internal=
  8. Encoding::find
  9. Encoding::list
  10. Encoding::locale_charmap
  11. Encoding::name_list
  12. Encoding#ascii_compatible?
  13. Encoding#dummy?
  14. Encoding#inspect
  15. Encoding#name
  16. Encoding#names
  17. Encoding#replicate
  18. Encoding#to_s
  19. Encoding::CompatibilityError
  20. Encoding::Converter
  21. Encoding::Converter::asciicompat_encoding
  22. Encoding::Converter::new
  23. Encoding::Converter::search_convpath
  24. Encoding::Converter#==
  25. Encoding::Converter#convert
  26. Encoding::Converter#convpath
  27. Encoding::Converter#destination_encoding
  28. Encoding::Converter#finish
  29. Encoding::Converter#insert_output
  30. Encoding::Converter#inspect
  31. Encoding::Converter#last_error
  32. Encoding::Converter#primitive_convert
  33. Encoding::Converter#primitive_errinfo
  34. Encoding::Converter#putback
  35. Encoding::Converter#replacement
  36. Encoding::Converter#replacement=
  37. Encoding::Converter#source_encoding
  38. Encoding::ConverterNotFoundError
  39. Encoding::InvalidByteSequenceError
  40. Encoding::InvalidByteSequenceError#destination_encoding
  41. Encoding::InvalidByteSequenceError#destination_encoding_name
  42. Encoding::InvalidByteSequenceError#error_bytes
  43. Encoding::InvalidByteSequenceError#incomplete_input?
  44. Encoding::InvalidByteSequenceError#readagain_bytes
  45. Encoding::InvalidByteSequenceError#source_encoding
  46. Encoding::InvalidByteSequenceError#source_encoding_name
  47. Encoding::UndefinedConversionError
  48. Encoding::UndefinedConversionError#destination_encoding
  49. Encoding::UndefinedConversionError#destination_encoding_name
  50. Encoding::UndefinedConversionError#error_char
  51. Encoding::UndefinedConversionError#source_encoding
  52. Encoding::UndefinedConversionError#source_encoding_name

Enumerable

  1. Enumerable
  2. Enumerable#all?
  3. Enumerable#any?
  4. Enumerable#chain
  5. Enumerable#chunk
  6. Enumerable#chunk_while
  7. Enumerable#collect
  8. Enumerable#collect_concat
  9. Enumerable#compact
  10. Enumerable#count
  11. Enumerable#cycle
  12. Enumerable#detect
  13. Enumerable#drop
  14. Enumerable#drop_while
  15. Enumerable#each_cons
  16. Enumerable#each_entry
  17. Enumerable#each_slice
  18. Enumerable#each_with_index
  19. Enumerable#each_with_object
  20. Enumerable#entries
  21. Enumerable#filter
  22. Enumerable#filter_map
  23. Enumerable#find
  24. Enumerable#find_all
  25. Enumerable#find_index
  26. Enumerable#first
  27. Enumerable#flat_map
  28. Enumerable#grep
  29. Enumerable#grep_v
  30. Enumerable#group_by
  31. Enumerable#include?
  32. Enumerable#inject
  33. Enumerable#lazy
  34. Enumerable#map
  35. Enumerable#max
  36. Enumerable#max_by
  37. Enumerable#member?
  38. Enumerable#min
  39. Enumerable#min_by
  40. Enumerable#minmax
  41. Enumerable#minmax_by
  42. Enumerable#none?
  43. Enumerable#one?
  44. Enumerable#partition
  45. Enumerable#reduce
  46. Enumerable#reject
  47. Enumerable#reverse_each
  48. Enumerable#select
  49. Enumerable#slice_after
  50. Enumerable#slice_before
  51. Enumerable#slice_when
  52. Enumerable#sort
  53. Enumerable#sort_by
  54. Enumerable#sum
  55. Enumerable#take
  56. Enumerable#take_while
  57. Enumerable#tally
  58. Enumerable#to_a
  59. Enumerable#to_h
  60. Enumerable#to_set
  61. Enumerable#uniq
  62. Enumerable#zip

Enumerator

  1. Enumerator
  2. Enumerator::new
  3. Enumerator::produce
  4. Enumerator#+
  5. Enumerator#each
  6. Enumerator#each_with_index
  7. Enumerator#each_with_object
  8. Enumerator#feed
  9. Enumerator#inspect
  10. Enumerator#next
  11. Enumerator#next_values
  12. Enumerator#peek
  13. Enumerator#peek_values
  14. Enumerator#rewind
  15. Enumerator#size
  16. Enumerator#with_index
  17. Enumerator#with_object
  18. Enumerator::ArithmeticSequence
  19. Enumerator::ArithmeticSequence#==
  20. Enumerator::ArithmeticSequence#===
  21. Enumerator::ArithmeticSequence#begin
  22. Enumerator::ArithmeticSequence#each
  23. Enumerator::ArithmeticSequence#end
  24. Enumerator::ArithmeticSequence#eql?
  25. Enumerator::ArithmeticSequence#exclude_end?
  26. Enumerator::ArithmeticSequence#first
  27. Enumerator::ArithmeticSequence#hash
  28. Enumerator::ArithmeticSequence#inspect
  29. Enumerator::ArithmeticSequence#last
  30. Enumerator::ArithmeticSequence#size
  31. Enumerator::ArithmeticSequence#step
  32. Enumerator::Chain
  33. Enumerator::Chain::new
  34. Enumerator::Chain#each
  35. Enumerator::Chain#inspect
  36. Enumerator::Chain#rewind
  37. Enumerator::Chain#size
  38. Enumerator::Generator
  39. Enumerator::Lazy
  40. Enumerator::Lazy::new
  41. Enumerator::Lazy#chunk
  42. Enumerator::Lazy#chunk_while
  43. Enumerator::Lazy#collect
  44. Enumerator::Lazy#collect_concat
  45. Enumerator::Lazy#compact
  46. Enumerator::Lazy#drop
  47. Enumerator::Lazy#drop_while
  48. Enumerator::Lazy#eager
  49. Enumerator::Lazy#enum_for
  50. Enumerator::Lazy#filter
  51. Enumerator::Lazy#filter_map
  52. Enumerator::Lazy#find_all
  53. Enumerator::Lazy#flat_map
  54. Enumerator::Lazy#force
  55. Enumerator::Lazy#grep
  56. Enumerator::Lazy#grep_v
  57. Enumerator::Lazy#lazy
  58. Enumerator::Lazy#map
  59. Enumerator::Lazy#reject
  60. Enumerator::Lazy#select
  61. Enumerator::Lazy#slice_after
  62. Enumerator::Lazy#slice_before
  63. Enumerator::Lazy#slice_when
  64. Enumerator::Lazy#take
  65. Enumerator::Lazy#take_while
  66. Enumerator::Lazy#to_a
  67. Enumerator::Lazy#to_enum
  68. Enumerator::Lazy#uniq
  69. Enumerator::Lazy#with_index
  70. Enumerator::Lazy#zip
  71. Enumerator::Producer
  72. Enumerator::Yielder
  73. Enumerator::Yielder#to_proc

ENV

  1. ENV
  2. ENV::[]
  3. ENV::[]=
  4. ENV::assoc
  5. ENV::clear
  6. ENV::clone
  7. ENV::delete
  8. ENV::delete_if
  9. ENV::dup
  10. ENV::each
  11. ENV::each_key
  12. ENV::each_pair
  13. ENV::each_value
  14. ENV::empty?
  15. ENV::except
  16. ENV::fetch
  17. ENV::filter
  18. ENV::filter!
  19. ENV::freeze
  20. ENV::has_key?
  21. ENV::has_value?
  22. ENV::include?
  23. ENV::inspect
  24. ENV::invert
  25. ENV::keep_if
  26. ENV::key
  27. ENV::key?
  28. ENV::keys
  29. ENV::length
  30. ENV::member?
  31. ENV::merge!
  32. ENV::rassoc
  33. ENV::rehash
  34. ENV::reject
  35. ENV::reject!
  36. ENV::replace
  37. ENV::select
  38. ENV::select!
  39. ENV::shift
  40. ENV::size
  41. ENV::slice
  42. ENV::store
  43. ENV::to_a
  44. ENV::to_h
  45. ENV::to_hash
  46. ENV::to_s
  47. ENV::update
  48. ENV::value?
  49. ENV::values
  50. ENV::values_at

ERB

  1. ERB
  2. ERB#encoding
  3. ERB#filename
  4. ERB#lineno
  5. ERB#src
  6. ERB::new
  7. ERB#def_class
  8. ERB#def_method
  9. ERB#def_module
  10. ERB#location=
  11. ERB#make_compiler
  12. ERB#new_toplevel
  13. ERB#result
  14. ERB#result_with_hash
  15. ERB#run
  16. ERB#set_eoutvar
  17. ERB::DefMethod
  18. ERB::DefMethod::def_erb_method
  19. ERB::DefMethod#def_erb_method
  20. ERB::Util
  21. ERB::Util::h
  22. ERB::Util::html_escape
  23. ERB::Util::u
  24. ERB::Util::url_encode
  25. ERB::Util#h
  26. ERB::Util#html_escape
  27. ERB::Util#u
  28. ERB::Util#url_encode

ErrorHighlight

  1. ErrorHighlight
  2. ErrorHighlight::formatter
  3. ErrorHighlight::formatter=
  4. ErrorHighlight::spot
  5. ErrorHighlight::CoreExt
  6. ErrorHighlight::CoreExt#to_s
  7. ErrorHighlight::DefaultFormatter
  8. ErrorHighlight::DefaultFormatter::message_for
  9. ErrorHighlight::Spotter
  10. ErrorHighlight::Spotter::new
  11. ErrorHighlight::Spotter#fetch_line
  12. ErrorHighlight::Spotter#spot
  13. ErrorHighlight::Spotter#spot_attrasgn_for_args
  14. ErrorHighlight::Spotter#spot_attrasgn_for_name
  15. ErrorHighlight::Spotter#spot_call_for_args
  16. ErrorHighlight::Spotter#spot_call_for_name
  17. ErrorHighlight::Spotter#spot_colon2
  18. ErrorHighlight::Spotter#spot_fcall_for_args
  19. ErrorHighlight::Spotter#spot_fcall_for_name
  20. ErrorHighlight::Spotter#spot_op_asgn1_for_args
  21. ErrorHighlight::Spotter#spot_op_asgn1_for_name
  22. ErrorHighlight::Spotter#spot_op_asgn2_for_args
  23. ErrorHighlight::Spotter#spot_op_asgn2_for_name
  24. ErrorHighlight::Spotter#spot_op_cdecl
  25. ErrorHighlight::Spotter#spot_opcall_for_args
  26. ErrorHighlight::Spotter#spot_opcall_for_name
  27. ErrorHighlight::Spotter#spot_vcall

Etc

  1. Etc
  2. Etc::confstr
  3. Etc::endgrent
  4. Etc::endpwent
  5. Etc::getgrent
  6. Etc::getgrgid
  7. Etc::getgrnam
  8. Etc::getlogin
  9. Etc::getpwent
  10. Etc::getpwnam
  11. Etc::getpwuid
  12. Etc::group
  13. Etc::nprocessors
  14. Etc::passwd
  15. Etc::setgrent
  16. Etc::setpwent
  17. Etc::sysconf
  18. Etc::sysconfdir
  19. Etc::systmpdir
  20. Etc::uname

Exception

  1. Exception
  2. Exception::exception
  3. Exception::json_create
  4. Exception::new
  5. Exception::to_tty?
  6. Exception#==
  7. Exception#as_json
  8. Exception#backtrace
  9. Exception#backtrace_locations
  10. Exception#cause
  11. Exception#exception
  12. Exception#full_message
  13. Exception#inspect
  14. Exception#message
  15. Exception#set_backtrace
  16. Exception#to_json
  17. Exception#to_s

Fiber

  1. Fiber
  2. Fiber::blocking?
  3. Fiber::current
  4. Fiber::current_scheduler
  5. Fiber::new
  6. Fiber::schedule
  7. Fiber::scheduler
  8. Fiber::set_scheduler
  9. Fiber::yield
  10. Fiber#alive?
  11. Fiber#backtrace
  12. Fiber#backtrace_locations
  13. Fiber#blocking?
  14. Fiber#inspect
  15. Fiber#raise
  16. Fiber#resume
  17. Fiber#to_s
  18. Fiber#transfer
  19. Fiber::SchedulerInterface
  20. Fiber::SchedulerInterface#address_resolve
  21. Fiber::SchedulerInterface#block
  22. Fiber::SchedulerInterface#close
  23. Fiber::SchedulerInterface#fiber
  24. Fiber::SchedulerInterface#io_read
  25. Fiber::SchedulerInterface#io_wait
  26. Fiber::SchedulerInterface#io_write
  27. Fiber::SchedulerInterface#kernel_sleep
  28. Fiber::SchedulerInterface#process_wait
  29. Fiber::SchedulerInterface#timeout_after
  30. Fiber::SchedulerInterface#unblock

Fiddle

  1. Fiddle
  2. Fiddle::dlopen
  3. Fiddle::dlunwrap
  4. Fiddle::dlwrap
  5. Fiddle::free
  6. Fiddle::last_error
  7. Fiddle::last_error=
  8. Fiddle::malloc
  9. Fiddle::realloc
  10. Fiddle::win32_last_error
  11. Fiddle::win32_last_error=
  12. Fiddle::win32_last_socket_error
  13. Fiddle::win32_last_socket_error=
  14. Fiddle#dlopen
  15. Fiddle::BasicTypes
  16. Fiddle::ClearedReferenceError
  17. Fiddle::Closure
  18. Fiddle::Closure#args
  19. Fiddle::Closure#ctype
  20. Fiddle::Closure::new
  21. Fiddle::Closure#to_i
  22. Fiddle::Closure::BlockCaller
  23. Fiddle::Closure::BlockCaller::new
  24. Fiddle::Closure::BlockCaller#call
  25. Fiddle::CompositeHandler
  26. Fiddle::CompositeHandler::new
  27. Fiddle::CompositeHandler#[]
  28. Fiddle::CompositeHandler#handlers
  29. Fiddle::CompositeHandler#sym
  30. Fiddle::CParser
  31. Fiddle::CParser#compact
  32. Fiddle::CParser#parse_ctype
  33. Fiddle::CParser#parse_signature
  34. Fiddle::CParser#parse_struct_signature
  35. Fiddle::CParser#split_arguments
  36. Fiddle::CStruct
  37. Fiddle::CStruct::entity_class
  38. Fiddle::CStruct#each
  39. Fiddle::CStruct#each_pair
  40. Fiddle::CStruct#replace
  41. Fiddle::CStruct#to_h
  42. Fiddle::CStruct#unstruct
  43. Fiddle::CStructBuilder
  44. Fiddle::CStructBuilder::create
  45. Fiddle::CStructBuilder#create
  46. Fiddle::CStructEntity
  47. Fiddle::CStructEntity::alignment
  48. Fiddle::CStructEntity::malloc
  49. Fiddle::CStructEntity::new
  50. Fiddle::CStructEntity::size
  51. Fiddle::CStructEntity#[]
  52. Fiddle::CStructEntity#[]=
  53. Fiddle::CStructEntity#assign_names
  54. Fiddle::CStructEntity#set_ctypes
  55. Fiddle::CUnion
  56. Fiddle::CUnion::entity_class
  57. Fiddle::CUnionEntity
  58. Fiddle::CUnionEntity::size
  59. Fiddle::CUnionEntity#set_ctypes
  60. Fiddle::DLError
  61. Fiddle::Error
  62. Fiddle::Function
  63. Fiddle::Function#abi
  64. Fiddle::Function#name
  65. Fiddle::Function#ptr
  66. Fiddle::Function::new
  67. Fiddle::Function#call
  68. Fiddle::Function#need_gvl?
  69. Fiddle::Function#to_i
  70. Fiddle::Function#to_proc
  71. Fiddle::Handle
  72. Fiddle::Handle::[]
  73. Fiddle::Handle::new
  74. Fiddle::Handle::sym
  75. Fiddle::Handle#[]
  76. Fiddle::Handle#close
  77. Fiddle::Handle#close_enabled?
  78. Fiddle::Handle#disable_close
  79. Fiddle::Handle#enable_close
  80. Fiddle::Handle#file_name
  81. Fiddle::Handle#sym
  82. Fiddle::Handle#to_i
  83. Fiddle::Handle#to_ptr
  84. Fiddle::Importer
  85. Fiddle::Importer#type_alias
  86. Fiddle::Importer#[]
  87. Fiddle::Importer#bind
  88. Fiddle::Importer#bind_function
  89. Fiddle::Importer#create_value
  90. Fiddle::Importer#dlload
  91. Fiddle::Importer#extern
  92. Fiddle::Importer#handler
  93. Fiddle::Importer#import_function
  94. Fiddle::Importer#import_symbol
  95. Fiddle::Importer#import_value
  96. Fiddle::Importer#parse_bind_options
  97. Fiddle::Importer#sizeof
  98. Fiddle::Importer#struct
  99. Fiddle::Importer#typealias
  100. Fiddle::Importer#union
  101. Fiddle::Importer#value
  102. Fiddle::Pinned
  103. Fiddle::Pinned::new
  104. Fiddle::Pinned#clear
  105. Fiddle::Pinned#cleared?
  106. Fiddle::Pinned#ref
  107. Fiddle::Pointer
  108. Fiddle::Pointer::[]
  109. Fiddle::Pointer::malloc
  110. Fiddle::Pointer::new
  111. Fiddle::Pointer::to_ptr
  112. Fiddle::Pointer#+
  113. Fiddle::Pointer#+@
  114. Fiddle::Pointer#-
  115. Fiddle::Pointer#-@
  116. Fiddle::Pointer#<=>
  117. Fiddle::Pointer#==
  118. Fiddle::Pointer#[]
  119. Fiddle::Pointer#[]=
  120. Fiddle::Pointer#call_free
  121. Fiddle::Pointer#eql?
  122. Fiddle::Pointer#free
  123. Fiddle::Pointer#free=
  124. Fiddle::Pointer#freed?
  125. Fiddle::Pointer#inspect
  126. Fiddle::Pointer#null?
  127. Fiddle::Pointer#ptr
  128. Fiddle::Pointer#ref
  129. Fiddle::Pointer#size
  130. Fiddle::Pointer#size=
  131. Fiddle::Pointer#to_i
  132. Fiddle::Pointer#to_int
  133. Fiddle::Pointer#to_s
  134. Fiddle::Pointer#to_str
  135. Fiddle::Pointer#to_value
  136. Fiddle::StructArray
  137. Fiddle::StructArray::new
  138. Fiddle::StructArray#[]=
  139. Fiddle::StructArray#to_ptr

File

  1. File
  2. File::absolute_path
  3. File::absolute_path?
  4. File::atime
  5. File::basename
  6. File::birthtime
  7. File::blockdev?
  8. File::chardev?
  9. File::chmod
  10. File::chown
  11. File::ctime
  12. File::delete
  13. File::directory?
  14. File::dirname
  15. File::empty?
  16. File::executable?
  17. File::executable_real?
  18. File::exist?
  19. File::expand_path
  20. File::extname
  21. File::file?
  22. File::fnmatch
  23. File::fnmatch?
  24. File::ftype
  25. File::grpowned?
  26. File::identical?
  27. File::join
  28. File::lchmod
  29. File::lchown
  30. File::link
  31. File::lstat
  32. File::lutime
  33. File::mkfifo
  34. File::mtime
  35. File::new
  36. File::open
  37. File::owned?
  38. File::path
  39. File::pipe?
  40. File::readable?
  41. File::readable_real?
  42. File::readlink
  43. File::realdirpath
  44. File::realpath
  45. File::rename
  46. File::setgid?
  47. File::setuid?
  48. File::size
  49. File::size?
  50. File::socket?
  51. File::split
  52. File::stat
  53. File::sticky?
  54. File::symlink
  55. File::symlink?
  56. File::truncate
  57. File::umask
  58. File::unlink
  59. File::utime
  60. File::world_readable?
  61. File::world_writable?
  62. File::writable?
  63. File::writable_real?
  64. File::zero?
  65. File#atime
  66. File#birthtime
  67. File#chmod
  68. File#chown
  69. File#ctime
  70. File#flock
  71. File#lstat
  72. File#mtime
  73. File#path
  74. File#size
  75. File#to_path
  76. File#truncate
  77. File::File::Constants
  78. File::Stat
  79. File::Stat::new
  80. File::Stat#<=>
  81. File::Stat#atime
  82. File::Stat#birthtime
  83. File::Stat#blksize
  84. File::Stat#blockdev?
  85. File::Stat#blocks
  86. File::Stat#chardev?
  87. File::Stat#ctime
  88. File::Stat#dev
  89. File::Stat#dev_major
  90. File::Stat#dev_minor
  91. File::Stat#directory?
  92. File::Stat#executable?
  93. File::Stat#executable_real?
  94. File::Stat#file?
  95. File::Stat#ftype
  96. File::Stat#gid
  97. File::Stat#grpowned?
  98. File::Stat#ino
  99. File::Stat#inspect
  100. File::Stat#mode
  101. File::Stat#mtime
  102. File::Stat#nlink
  103. File::Stat#owned?
  104. File::Stat#pipe?
  105. File::Stat#rdev
  106. File::Stat#rdev_major
  107. File::Stat#rdev_minor
  108. File::Stat#readable?
  109. File::Stat#readable_real?
  110. File::Stat#setgid?
  111. File::Stat#setuid?
  112. File::Stat#size
  113. File::Stat#size?
  114. File::Stat#socket?
  115. File::Stat#sticky?
  116. File::Stat#symlink?
  117. File::Stat#uid
  118. File::Stat#world_readable?
  119. File::Stat#world_writable?
  120. File::Stat#writable?
  121. File::Stat#writable_real?
  122. File::Stat#zero?
  123. FileTest
  124. FileTest#blockdev?
  125. FileTest#chardev?
  126. FileTest#directory?
  127. FileTest#empty?
  128. FileTest#executable?
  129. FileTest#executable_real?
  130. FileTest#exist?
  131. FileTest#file?
  132. FileTest#grpowned?
  133. FileTest#identical?
  134. FileTest#owned?
  135. FileTest#pipe?
  136. FileTest#readable?
  137. FileTest#readable_real?
  138. FileTest#setgid?
  139. FileTest#setuid?
  140. FileTest#size
  141. FileTest#size?
  142. FileTest#socket?
  143. FileTest#sticky?
  144. FileTest#symlink?
  145. FileTest#world_readable?
  146. FileTest#world_writable?
  147. FileTest#writable?
  148. FileTest#writable_real?
  149. FileTest#zero?

FileUtils

  1. FileUtils
  2. FileUtils::cd
  3. FileUtils::chdir
  4. FileUtils::chmod
  5. FileUtils::chmod_R
  6. FileUtils::chown
  7. FileUtils::chown_R
  8. FileUtils::cmp
  9. FileUtils::collect_method
  10. FileUtils::commands
  11. FileUtils::compare_file
  12. FileUtils::compare_stream
  13. FileUtils::copy
  14. FileUtils::copy_entry
  15. FileUtils::copy_file
  16. FileUtils::copy_stream
  17. FileUtils::cp
  18. FileUtils::cp_lr
  19. FileUtils::cp_r
  20. FileUtils::getwd
  21. FileUtils::have_option?
  22. FileUtils::identical?
  23. FileUtils::install
  24. FileUtils::link
  25. FileUtils::link_entry
  26. FileUtils::ln
  27. FileUtils::ln_s
  28. FileUtils::ln_sf
  29. FileUtils::makedirs
  30. FileUtils::mkdir
  31. FileUtils::mkdir_p
  32. FileUtils::mkpath
  33. FileUtils::move
  34. FileUtils::mv
  35. FileUtils::options
  36. FileUtils::options_of
  37. FileUtils::pwd
  38. FileUtils::remove
  39. FileUtils::remove_dir
  40. FileUtils::remove_entry
  41. FileUtils::remove_entry_secure
  42. FileUtils::remove_file
  43. FileUtils::rm
  44. FileUtils::rm_f
  45. FileUtils::rm_r
  46. FileUtils::rm_rf
  47. FileUtils::rmdir
  48. FileUtils::rmtree
  49. FileUtils::safe_unlink
  50. FileUtils::symlink
  51. FileUtils::touch
  52. FileUtils::uptodate?
  53. FileUtils#cd
  54. FileUtils#chdir
  55. FileUtils#chmod
  56. FileUtils#chmod_R
  57. FileUtils#chown
  58. FileUtils#chown_R
  59. FileUtils#cmp
  60. FileUtils#compare_file
  61. FileUtils#compare_stream
  62. FileUtils#copy
  63. FileUtils#copy_entry
  64. FileUtils#copy_file
  65. FileUtils#copy_stream
  66. FileUtils#cp
  67. FileUtils#cp_lr
  68. FileUtils#cp_r
  69. FileUtils#getwd
  70. FileUtils#identical?
  71. FileUtils#install
  72. FileUtils#link
  73. FileUtils#link_entry
  74. FileUtils#ln
  75. FileUtils#ln_s
  76. FileUtils#ln_sf
  77. FileUtils#makedirs
  78. FileUtils#mkdir
  79. FileUtils#mkdir_p
  80. FileUtils#mkpath
  81. FileUtils#move
  82. FileUtils#mv
  83. FileUtils#pwd
  84. FileUtils#remove
  85. FileUtils#remove_dir
  86. FileUtils#remove_entry
  87. FileUtils#remove_entry_secure
  88. FileUtils#remove_file
  89. FileUtils#rm
  90. FileUtils#rm_f
  91. FileUtils#rm_r
  92. FileUtils#rm_rf
  93. FileUtils#rmdir
  94. FileUtils#rmtree
  95. FileUtils#safe_unlink
  96. FileUtils#symlink
  97. FileUtils#touch
  98. FileUtils#uptodate?
  99. FileUtils::DryRun
  100. FileUtils::NoWrite
  101. FileUtils::StreamUtils_
  102. FileUtils::StreamUtils_#fu_blksize
  103. FileUtils::StreamUtils_#fu_default_blksize
  104. FileUtils::StreamUtils_#fu_stream_blksize
  105. FileUtils::StreamUtils_#fu_windows?
  106. FileUtils::Verbose

Find

  1. Find
  2. Find::find
  3. Find::prune
  4. Find#find
  5. Find#prune

Float

  1. Float
  2. Float#%
  3. Float#*
  4. Float#**
  5. Float#+
  6. Float#-
  7. Float#-@
  8. Float#/
  9. Float#<
  10. Float#<=
  11. Float#<=>
  12. Float#==
  13. Float#===
  14. Float#>
  15. Float#>=
  16. Float#abs
  17. Float#angle
  18. Float#arg
  19. Float#ceil
  20. Float#coerce
  21. Float#denominator
  22. Float#divmod
  23. Float#eql?
  24. Float#fdiv
  25. Float#finite?
  26. Float#floor
  27. Float#hash
  28. Float#infinite?
  29. Float#inspect
  30. Float#magnitude
  31. Float#modulo
  32. Float#nan?
  33. Float#negative?
  34. Float#next_float
  35. Float#numerator
  36. Float#phase
  37. Float#positive?
  38. Float#prev_float
  39. Float#quo
  40. Float#rationalize
  41. Float#round
  42. Float#to_d
  43. Float#to_f
  44. Float#to_i
  45. Float#to_int
  46. Float#to_r
  47. Float#to_s
  48. Float#truncate
  49. Float#zero?

Forwardable

  1. Forwardable
  2. Forwardable::debug
  3. Forwardable#def_delegator
  4. Forwardable#def_delegators
  5. Forwardable#def_instance_delegator
  6. Forwardable#def_instance_delegators
  7. Forwardable#delegate
  8. Forwardable#instance_delegate
  9. SingleForwardable
  10. SingleForwardable#def_delegator
  11. SingleForwardable#def_delegators
  12. SingleForwardable#def_single_delegator
  13. SingleForwardable#def_single_delegators
  14. SingleForwardable#delegate
  15. SingleForwardable#single_delegate

GC

  1. GC
  2. GC::add_stress_to_class
  3. GC::auto_compact
  4. GC::auto_compact=
  5. GC::compact
  6. GC::count
  7. GC::disable
  8. GC::enable
  9. GC::latest_compact_info
  10. GC::latest_gc_info
  11. GC::malloc_allocated_size
  12. GC::malloc_allocations
  13. GC::measure_total_time
  14. GC::measure_total_time=
  15. GC::remove_stress_to_class
  16. GC::start
  17. GC::stat
  18. GC::stress
  19. GC::stress=
  20. GC::total_time
  21. GC::verify_compaction_references
  22. GC::verify_internal_consistency
  23. GC::verify_transient_heap_internal_consistency
  24. GC#garbage_collect
  25. GC::Profiler
  26. GC::Profiler::clear
  27. GC::Profiler::disable
  28. GC::Profiler::enable
  29. GC::Profiler::enabled?
  30. GC::Profiler::raw_data
  31. GC::Profiler::report
  32. GC::Profiler::result
  33. GC::Profiler::total_time

GetoptLong

  1. GetoptLong
  2. GetoptLong#error
  3. GetoptLong#error?
  4. GetoptLong#ordering
  5. GetoptLong#quiet
  6. GetoptLong#quiet?
  7. GetoptLong::new
  8. GetoptLong#each
  9. GetoptLong#each_option
  10. GetoptLong#error_message
  11. GetoptLong#get
  12. GetoptLong#get_option
  13. GetoptLong#ordering=
  14. GetoptLong#set_error
  15. GetoptLong#set_options
  16. GetoptLong#terminate
  17. GetoptLong#terminated?
  18. GetoptLong::Error

Hash

  1. Hash
  2. Hash::[]
  3. Hash::new
  4. Hash::ruby2_keywords_hash
  5. Hash::ruby2_keywords_hash?
  6. Hash::try_convert
  7. Hash#<
  8. Hash#<=
  9. Hash#==
  10. Hash#>
  11. Hash#>=
  12. Hash#[]
  13. Hash#[]=
  14. Hash#any?
  15. Hash#assoc
  16. Hash#clear
  17. Hash#compact
  18. Hash#compact!
  19. Hash#compare_by_identity
  20. Hash#compare_by_identity?
  21. Hash#deconstruct_keys
  22. Hash#default
  23. Hash#default=
  24. Hash#default_proc
  25. Hash#default_proc=
  26. Hash#delete
  27. Hash#delete_if
  28. Hash#dig
  29. Hash#each
  30. Hash#each_key
  31. Hash#each_pair
  32. Hash#each_value
  33. Hash#empty?
  34. Hash#eql?
  35. Hash#except
  36. Hash#fetch
  37. Hash#fetch_values
  38. Hash#filter
  39. Hash#filter!
  40. Hash#flatten
  41. Hash#has_key?
  42. Hash#has_value?
  43. Hash#hash
  44. Hash#include?
  45. Hash#initialize_copy
  46. Hash#inspect
  47. Hash#invert
  48. Hash#keep_if
  49. Hash#key
  50. Hash#key?
  51. Hash#keys
  52. Hash#length
  53. Hash#member?
  54. Hash#merge
  55. Hash#merge!
  56. Hash#rassoc
  57. Hash#rehash
  58. Hash#reject
  59. Hash#reject!
  60. Hash#replace
  61. Hash#select
  62. Hash#select!
  63. Hash#shift
  64. Hash#size
  65. Hash#slice
  66. Hash#store
  67. Hash#to_a
  68. Hash#to_h
  69. Hash#to_hash
  70. Hash#to_proc
  71. Hash#to_s
  72. Hash#transform_keys
  73. Hash#transform_keys!
  74. Hash#transform_values
  75. Hash#transform_values!
  76. Hash#update
  77. Hash#value?
  78. Hash#values
  79. Hash#values_at

Integer

  1. Integer
  2. Integer::sqrt
  3. Integer::try_convert
  4. Integer#%
  5. Integer#&
  6. Integer#*
  7. Integer#**
  8. Integer#+
  9. Integer#-
  10. Integer#-@
  11. Integer#/
  12. Integer#<
  13. Integer#<<
  14. Integer#<=
  15. Integer#<=>
  16. Integer#==
  17. Integer#===
  18. Integer#>
  19. Integer#>=
  20. Integer#>>
  21. Integer#[]
  22. Integer#^
  23. Integer#|
  24. Integer#abs
  25. Integer#allbits?
  26. Integer#anybits?
  27. Integer#bit_length
  28. Integer#ceil
  29. Integer#chr
  30. Integer#coerce
  31. Integer#denominator
  32. Integer#digits
  33. Integer#div
  34. Integer#divmod
  35. Integer#downto
  36. Integer#even?
  37. Integer#fdiv
  38. Integer#floor
  39. Integer#gcd
  40. Integer#gcdlcm
  41. Integer#inspect
  42. Integer#integer?
  43. Integer#lcm
  44. Integer#magnitude
  45. Integer#modulo
  46. Integer#next
  47. Integer#nobits?
  48. Integer#numerator
  49. Integer#odd?
  50. Integer#ord
  51. Integer#pow
  52. Integer#pred
  53. Integer#rationalize
  54. Integer#remainder
  55. Integer#round
  56. Integer#size
  57. Integer#succ
  58. Integer#times
  59. Integer#to_bn
  60. Integer#to_d
  61. Integer#to_f
  62. Integer#to_i
  63. Integer#to_int
  64. Integer#to_r
  65. Integer#to_s
  66. Integer#truncate
  67. Integer#upto
  68. Integer#zero?
  69. Integer#~

IO

  1. IO
  2. IO::binread
  3. IO::binwrite
  4. IO::console
  5. IO::console_size
  6. IO::copy_stream
  7. IO::default_console_size
  8. IO::for_fd
  9. IO::foreach
  10. IO::new
  11. IO::open
  12. IO::pipe
  13. IO::popen
  14. IO::read
  15. IO::readlines
  16. IO::select
  17. IO::sysopen
  18. IO::try_convert
  19. IO::write
  20. IO#<<
  21. IO#advise
  22. IO#autoclose=
  23. IO#autoclose?
  24. IO#beep
  25. IO#binmode
  26. IO#binmode?
  27. IO#check_winsize_changed
  28. IO#clear_screen
  29. IO#close
  30. IO#close_on_exec=
  31. IO#close_on_exec?
  32. IO#close_read
  33. IO#close_write
  34. IO#closed?
  35. IO#console_mode
  36. IO#console_mode=
  37. IO#cooked
  38. IO#cooked!
  39. IO#cursor
  40. IO#cursor=
  41. IO#cursor_down
  42. IO#cursor_left
  43. IO#cursor_right
  44. IO#cursor_up
  45. IO#each
  46. IO#each_byte
  47. IO#each_char
  48. IO#each_codepoint
  49. IO#each_line
  50. IO#echo=
  51. IO#echo?
  52. IO#eof
  53. IO#eof?
  54. IO#erase_line
  55. IO#erase_screen
  56. IO#expect
  57. IO#external_encoding
  58. IO#fcntl
  59. IO#fdatasync
  60. IO#fileno
  61. IO#flush
  62. IO#fsync
  63. IO#getbyte
  64. IO#getc
  65. IO#getch
  66. IO#getpass
  67. IO#gets
  68. IO#goto
  69. IO#goto_column
  70. IO#iflush
  71. IO#inspect
  72. IO#internal_encoding
  73. IO#ioctl
  74. IO#ioflush
  75. IO#isatty
  76. IO#lineno
  77. IO#lineno=
  78. IO#noecho
  79. IO#nonblock
  80. IO#nonblock=
  81. IO#nonblock?
  82. IO#nread
  83. IO#oflush
  84. IO#pathconf
  85. IO#pid
  86. IO#pos
  87. IO#pos=
  88. IO#pread
  89. IO#pressed?
  90. IO#print
  91. IO#printf
  92. IO#putc
  93. IO#puts
  94. IO#pwrite
  95. IO#raw
  96. IO#raw!
  97. IO#read
  98. IO#read_nonblock
  99. IO#readbyte
  100. IO#readchar
  101. IO#readline
  102. IO#readlines
  103. IO#readpartial
  104. IO#ready?
  105. IO#reopen
  106. IO#rewind
  107. IO#scroll_backward
  108. IO#scroll_forward
  109. IO#seek
  110. IO#set_encoding
  111. IO#set_encoding_by_bom
  112. IO#stat
  113. IO#sync
  114. IO#sync=
  115. IO#sysread
  116. IO#sysseek
  117. IO#syswrite
  118. IO#tell
  119. IO#to_i
  120. IO#to_io
  121. IO#tty?
  122. IO#ungetbyte
  123. IO#ungetc
  124. IO#wait
  125. IO#wait_priority
  126. IO#wait_readable
  127. IO#wait_writable
  128. IO#winsize
  129. IO#winsize=
  130. IO#write
  131. IO#write_nonblock
  132. IO::Buffer
  133. IO::Buffer::for
  134. IO::Buffer::map
  135. IO::Buffer::new
  136. IO::Buffer#<=>
  137. IO::Buffer#clear
  138. IO::Buffer#copy
  139. IO::Buffer#empty?
  140. IO::Buffer#external?
  141. IO::Buffer#free
  142. IO::Buffer#get_string
  143. IO::Buffer#get_value
  144. IO::Buffer#hexdump
  145. IO::Buffer#inspect
  146. IO::Buffer#internal?
  147. IO::Buffer#locked
  148. IO::Buffer#locked?
  149. IO::Buffer#mapped?
  150. IO::Buffer#null?
  151. IO::Buffer#pread
  152. IO::Buffer#pwrite
  153. IO::Buffer#read
  154. IO::Buffer#readonly?
  155. IO::Buffer#resize
  156. IO::Buffer#set_string
  157. IO::Buffer#set_value
  158. IO::Buffer#size
  159. IO::Buffer#slice
  160. IO::Buffer#to_s
  161. IO::Buffer#transfer
  162. IO::Buffer#valid?
  163. IO::Buffer#write
  164. IO::EAGAINWaitReadable
  165. IO::EAGAINWaitWritable
  166. IO::EINPROGRESSWaitReadable
  167. IO::EINPROGRESSWaitWritable
  168. IO::EWOULDBLOCKWaitReadable
  169. IO::EWOULDBLOCKWaitWritable
  170. IO::generic_readable
  171. IO::generic_readable#getch
  172. IO::generic_readable#getpass
  173. IO::generic_readable#read_nonblock
  174. IO::generic_readable#readbyte
  175. IO::generic_readable#readchar
  176. IO::generic_readable#readline
  177. IO::generic_readable#readpartial
  178. IO::generic_readable#sysread
  179. IO::generic_writable
  180. IO::generic_writable#<<
  181. IO::generic_writable#print
  182. IO::generic_writable#printf
  183. IO::generic_writable#puts
  184. IO::generic_writable#write_nonblock
  185. IO::WaitReadable
  186. IO::WaitWritable

IPAddr

  1. IPAddr
  2. IPAddr#family
  3. IPAddr::new
  4. IPAddr::new_ntoh
  5. IPAddr::ntop
  6. IPAddr#&
  7. IPAddr#<<
  8. IPAddr#<=>
  9. IPAddr#==
  10. IPAddr#===
  11. IPAddr#>>
  12. IPAddr#|
  13. IPAddr#addr_mask
  14. IPAddr#coerce_other
  15. IPAddr#eql?
  16. IPAddr#hash
  17. IPAddr#hton
  18. IPAddr#in6_addr
  19. IPAddr#in_addr
  20. IPAddr#include?
  21. IPAddr#inspect
  22. IPAddr#ip6_arpa
  23. IPAddr#ip6_int
  24. IPAddr#ipv4?
  25. IPAddr#ipv4_compat
  26. IPAddr#ipv4_compat?
  27. IPAddr#ipv4_mapped
  28. IPAddr#ipv4_mapped?
  29. IPAddr#ipv6?
  30. IPAddr#link_local?
  31. IPAddr#loopback?
  32. IPAddr#mask
  33. IPAddr#mask!
  34. IPAddr#native
  35. IPAddr#netmask
  36. IPAddr#prefix
  37. IPAddr#prefix=
  38. IPAddr#private?
  39. IPAddr#reverse
  40. IPAddr#set
  41. IPAddr#succ
  42. IPAddr#to_i
  43. IPAddr#to_range
  44. IPAddr#to_s
  45. IPAddr#to_string
  46. IPAddr#zone_id
  47. IPAddr#zone_id=
  48. IPAddr#~
  49. IPAddr::AddressFamilyError
  50. IPAddr::Error
  51. IPAddr::InvalidAddressError
  52. IPAddr::InvalidPrefixError

JSON

  1. JSON
  2. JSON::dump_default_options
  3. JSON::generator
  4. JSON::load_default_options
  5. JSON::parser
  6. JSON::state
  7. JSON::[]
  8. JSON::create_fast_state
  9. JSON::create_id
  10. JSON::create_id=
  11. JSON::create_pretty_state
  12. JSON::iconv
  13. JSON::restore
  14. JSON#dump
  15. JSON#fast_generate
  16. JSON#generate
  17. JSON#load
  18. JSON#load_file
  19. JSON#load_file!
  20. JSON#parse
  21. JSON#parse!
  22. JSON#pretty_generate
  23. JSON#restore
  24. JSON::GeneratorError
  25. JSON::GenericObject
  26. JSON::GenericObject::json_creatable
  27. JSON::GenericObject::dump
  28. JSON::GenericObject::from_hash
  29. JSON::GenericObject::json_creatable?
  30. JSON::GenericObject::json_create
  31. JSON::GenericObject::load
  32. JSON::GenericObject#[]
  33. JSON::GenericObject#[]=
  34. JSON::GenericObject#|
  35. JSON::GenericObject#as_json
  36. JSON::GenericObject#to_hash
  37. JSON::GenericObject#to_json
  38. JSON::JSONError
  39. JSON::JSONError::wrap
  40. JSON::MissingUnicodeSupport
  41. JSON::NestingError
  42. JSON::ParserError

Kernel

  1. Kernel
  2. Kernel::URI
  3. Kernel::pp
  4. Kernel#`
  5. Kernel#Array
  6. Kernel#BigDecimal
  7. Kernel#Complex
  8. Kernel#Float
  9. Kernel#Hash
  10. Kernel#Integer
  11. Kernel#JSON
  12. Kernel#Pathname
  13. Kernel#Rational
  14. Kernel#String
  15. Kernel#URI
  16. Kernel#abort
  17. Kernel#at_exit
  18. Kernel#autoload
  19. Kernel#autoload?
  20. Kernel#binding
  21. Kernel#block_given?
  22. Kernel#callcc
  23. Kernel#caller
  24. Kernel#caller_locations
  25. Kernel#catch
  26. Kernel#chomp
  27. Kernel#chop
  28. Kernel#class
  29. Kernel#clone
  30. Kernel#eval
  31. Kernel#exec
  32. Kernel#exit
  33. Kernel#exit!
  34. Kernel#fail
  35. Kernel#fork
  36. Kernel#format
  37. Kernel#frozen?
  38. Kernel#gem
  39. Kernel#gem_original_require
  40. Kernel#gets
  41. Kernel#global_variables
  42. Kernel#gsub
  43. Kernel#iterator?
  44. Kernel#j
  45. Kernel#jj
  46. Kernel#lambda
  47. Kernel#load
  48. Kernel#local_variables
  49. Kernel#loop
  50. Kernel#open
  51. Kernel#p
  52. Kernel#pp
  53. Kernel#pretty_inspect
  54. Kernel#print
  55. Kernel#printf
  56. Kernel#proc
  57. Kernel#putc
  58. Kernel#puts
  59. Kernel#raise
  60. Kernel#rand
  61. Kernel#readline
  62. Kernel#readlines
  63. Kernel#require
  64. Kernel#require_relative
  65. Kernel#select
  66. Kernel#set_trace_func
  67. Kernel#sleep
  68. Kernel#spawn
  69. Kernel#sprintf
  70. Kernel#srand
  71. Kernel#sub
  72. Kernel#syscall
  73. Kernel#system
  74. Kernel#tap
  75. Kernel#test
  76. Kernel#then
  77. Kernel#throw
  78. Kernel#trace_var
  79. Kernel#trap
  80. Kernel#untrace_var
  81. Kernel#warn
  82. Kernel#y
  83. Kernel#yield_self

Logger

  1. Logger
  2. Logger#formatter
  3. Logger#level
  4. Logger#progname
  5. Logger#sev_threshold
  6. Logger::new
  7. Logger#<<
  8. Logger#add
  9. Logger#close
  10. Logger#datetime_format
  11. Logger#datetime_format=
  12. Logger#debug
  13. Logger#debug!
  14. Logger#debug?
  15. Logger#error
  16. Logger#error!
  17. Logger#error?
  18. Logger#fatal
  19. Logger#fatal!
  20. Logger#fatal?
  21. Logger#format_message
  22. Logger#format_severity
  23. Logger#info
  24. Logger#info!
  25. Logger#info?
  26. Logger#level=
  27. Logger#log
  28. Logger#reopen
  29. Logger#sev_threshold=
  30. Logger#unknown
  31. Logger#warn
  32. Logger#warn!
  33. Logger#warn?
  34. Logger::Formatter
  35. Logger::Formatter#datetime_format
  36. Logger::Formatter::new
  37. Logger::Formatter#call
  38. Logger::Formatter#format_datetime
  39. Logger::Formatter#msg2str
  40. Logger::LogDevice
  41. Logger::LogDevice#dev
  42. Logger::LogDevice#filename
  43. Logger::LogDevice::new
  44. Logger::LogDevice#add_log_header
  45. Logger::LogDevice#check_shift_log
  46. Logger::LogDevice#close
  47. Logger::LogDevice#create_logfile
  48. Logger::LogDevice#lock_shift_log
  49. Logger::LogDevice#open_logfile
  50. Logger::LogDevice#reopen
  51. Logger::LogDevice#set_dev
  52. Logger::LogDevice#shift_log_age
  53. Logger::LogDevice#shift_log_period
  54. Logger::LogDevice#write
  55. Logger::Period
  56. Logger::Period#next_rotate_time
  57. Logger::Period#previous_period_end
  58. Logger::Severity

MatchData

  1. MatchData
  2. MatchData#==
  3. MatchData#[]
  4. MatchData#begin
  5. MatchData#captures
  6. MatchData#end
  7. MatchData#eql?
  8. MatchData#hash
  9. MatchData#inspect
  10. MatchData#length
  11. MatchData#match
  12. MatchData#match_length
  13. MatchData#named_captures
  14. MatchData#names
  15. MatchData#offset
  16. MatchData#post_match
  17. MatchData#pre_match
  18. MatchData#regexp
  19. MatchData#size
  20. MatchData#string
  21. MatchData#to_a
  22. MatchData#to_s
  23. MatchData#values_at

Math

  1. Math
  2. Math::acos
  3. Math::acosh
  4. Math::asin
  5. Math::asinh
  6. Math::atan
  7. Math::atan2
  8. Math::atanh
  9. Math::cbrt
  10. Math::cos
  11. Math::cosh
  12. Math::erf
  13. Math::erfc
  14. Math::exp
  15. Math::frexp
  16. Math::gamma
  17. Math::hypot
  18. Math::ldexp
  19. Math::lgamma
  20. Math::log
  21. Math::log10
  22. Math::log2
  23. Math::sin
  24. Math::sinh
  25. Math::sqrt
  26. Math::tan
  27. Math::tanh
  28. Math::DomainError

Method

  1. Method
  2. Method#<<
  3. Method#==
  4. Method#===
  5. Method#>>
  6. Method#[]
  7. Method#arity
  8. Method#call
  9. Method#clone
  10. Method#curry
  11. Method#eql?
  12. Method#hash
  13. Method#inspect
  14. Method#name
  15. Method#original_name
  16. Method#owner
  17. Method#parameters
  18. Method#private?
  19. Method#protected?
  20. Method#public?
  21. Method#receiver
  22. Method#source_location
  23. Method#super_method
  24. Method#to_proc
  25. Method#to_s
  26. Method#unbind

Module

  1. Module
  2. Module::constants
  3. Module::nesting
  4. Module::new
  5. Module::used_modules
  6. Module#<
  7. Module#<=
  8. Module#<=>
  9. Module#==
  10. Module#===
  11. Module#>
  12. Module#>=
  13. Module#alias_method
  14. Module#ancestors
  15. Module#append_features
  16. Module#attr
  17. Module#attr_accessor
  18. Module#attr_reader
  19. Module#attr_writer
  20. Module#autoload
  21. Module#autoload?
  22. Module#class_eval
  23. Module#class_exec
  24. Module#class_variable_defined?
  25. Module#class_variable_get
  26. Module#class_variable_set
  27. Module#class_variables
  28. Module#const_defined?
  29. Module#const_get
  30. Module#const_missing
  31. Module#const_set
  32. Module#const_source_location
  33. Module#constants
  34. Module#define_method
  35. Module#deprecate_constant
  36. Module#extend_object
  37. Module#extended
  38. Module#freeze
  39. Module#include
  40. Module#include?
  41. Module#included
  42. Module#included_modules
  43. Module#inspect
  44. Module#instance_method
  45. Module#instance_methods
  46. Module#method_added
  47. Module#method_defined?
  48. Module#method_removed
  49. Module#method_undefined
  50. Module#module_eval
  51. Module#module_exec
  52. Module#module_function
  53. Module#name
  54. Module#prepend
  55. Module#prepend_features
  56. Module#prepended
  57. Module#private
  58. Module#private_class_method
  59. Module#private_constant
  60. Module#private_instance_methods
  61. Module#private_method_defined?
  62. Module#protected
  63. Module#protected_instance_methods
  64. Module#protected_method_defined?
  65. Module#public
  66. Module#public_class_method
  67. Module#public_constant
  68. Module#public_instance_method
  69. Module#public_instance_methods
  70. Module#public_method_defined?
  71. Module#refine
  72. Module#remove_class_variable
  73. Module#remove_const
  74. Module#remove_method
  75. Module#ruby2_keywords
  76. Module#singleton_class?
  77. Module#to_s
  78. Module#undef_method
  79. Module#using

Monitor

  1. Monitor
  2. Monitor#enter
  3. Monitor#exit
  4. Monitor#mon_check_owner
  5. Monitor#mon_enter
  6. Monitor#mon_exit
  7. Monitor#mon_locked?
  8. Monitor#mon_owned?
  9. Monitor#mon_synchronize
  10. Monitor#mon_try_enter
  11. Monitor#new_cond
  12. Monitor#synchronize
  13. Monitor#try_enter
  14. Monitor#try_mon_enter
  15. Monitor#wait_for_cond
  16. MonitorMixin
  17. MonitorMixin::extend_object
  18. MonitorMixin::new
  19. MonitorMixin#mon_check_owner
  20. MonitorMixin#mon_enter
  21. MonitorMixin#mon_exit
  22. MonitorMixin#mon_initialize
  23. MonitorMixin#mon_locked?
  24. MonitorMixin#mon_owned?
  25. MonitorMixin#mon_synchronize
  26. MonitorMixin#mon_try_enter
  27. MonitorMixin#new_cond
  28. MonitorMixin#synchronize
  29. MonitorMixin#try_mon_enter
  30. MonitorMixin::ConditionVariable
  31. MonitorMixin::ConditionVariable::new
  32. MonitorMixin::ConditionVariable#broadcast
  33. MonitorMixin::ConditionVariable#signal
  34. MonitorMixin::ConditionVariable#wait
  35. MonitorMixin::ConditionVariable#wait_until
  36. MonitorMixin::ConditionVariable#wait_while

Mutex

  1. Mutex_m
  2. Mutex_m#mu_lock
  3. Mutex_m#mu_locked?
  4. Mutex_m#mu_synchronize
  5. Mutex_m#mu_try_lock
  6. Mutex_m#mu_unlock
  7. Mutex_m#sleep

Net

  1. Net
  2. Net::OpenTimeout
  3. Net::ReadTimeout
  4. Net::ReadTimeout#io
  5. Net::ReadTimeout::new
  6. Net::ReadTimeout#message
  7. Net::WriteAdapter
  8. Net::WriteAdapter::new
  9. Net::WriteAdapter#<<
  10. Net::WriteAdapter#inspect
  11. Net::WriteAdapter#print
  12. Net::WriteAdapter#printf
  13. Net::WriteAdapter#puts
  14. Net::WriteAdapter#write
  15. Net::WriteTimeout
  16. Net::WriteTimeout#io
  17. Net::WriteTimeout::new
  18. Net::WriteTimeout#message

HTTP

  1. Net::HTTP
  2. Net::HTTP::proxy_address
  3. Net::HTTP::proxy_pass
  4. Net::HTTP::proxy_port
  5. Net::HTTP::proxy_user
  6. Net::HTTP#address
  7. Net::HTTP#ca_file
  8. Net::HTTP#ca_path
  9. Net::HTTP#cert
  10. Net::HTTP#cert_store
  11. Net::HTTP#ciphers
  12. Net::HTTP#close_on_empty_response
  13. Net::HTTP#continue_timeout
  14. Net::HTTP#extra_chain_cert
  15. Net::HTTP#keep_alive_timeout
  16. Net::HTTP#key
  17. Net::HTTP#local_host
  18. Net::HTTP#local_port
  19. Net::HTTP#max_retries
  20. Net::HTTP#max_version
  21. Net::HTTP#min_version
  22. Net::HTTP#open_timeout
  23. Net::HTTP#port
  24. Net::HTTP#proxy_address
  25. Net::HTTP#proxy_from_env
  26. Net::HTTP#proxy_pass
  27. Net::HTTP#proxy_port
  28. Net::HTTP#proxy_user
  29. Net::HTTP#read_timeout
  30. Net::HTTP#ssl_timeout
  31. Net::HTTP#ssl_version
  32. Net::HTTP#verify_callback
  33. Net::HTTP#verify_depth
  34. Net::HTTP#verify_hostname
  35. Net::HTTP#verify_mode
  36. Net::HTTP#write_timeout
  37. Net::HTTP::Proxy
  38. Net::HTTP::default_port
  39. Net::HTTP::get
  40. Net::HTTP::get_print
  41. Net::HTTP::get_response
  42. Net::HTTP::http_default_port
  43. Net::HTTP::https_default_port
  44. Net::HTTP::is_version_1_2?
  45. Net::HTTP::new
  46. Net::HTTP::newobj
  47. Net::HTTP::post
  48. Net::HTTP::post_form
  49. Net::HTTP::proxy_class?
  50. Net::HTTP::start
  51. Net::HTTP::version_1_2
  52. Net::HTTP::version_1_2?
  53. Net::HTTP#D
  54. Net::HTTP#active?
  55. Net::HTTP#addr_port
  56. Net::HTTP#begin_transport
  57. Net::HTTP#connect
  58. Net::HTTP#continue_timeout=
  59. Net::HTTP#copy
  60. Net::HTTP#delete
  61. Net::HTTP#do_finish
  62. Net::HTTP#do_start
  63. Net::HTTP#edit_path
  64. Net::HTTP#end_transport
  65. Net::HTTP#finish
  66. Net::HTTP#get
  67. Net::HTTP#get2
  68. Net::HTTP#head
  69. Net::HTTP#head2
  70. Net::HTTP#inspect
  71. Net::HTTP#ipaddr
  72. Net::HTTP#ipaddr=
  73. Net::HTTP#keep_alive?
  74. Net::HTTP#lock
  75. Net::HTTP#max_retries=
  76. Net::HTTP#mkcol
  77. Net::HTTP#move
  78. Net::HTTP#on_connect
  79. Net::HTTP#options
  80. Net::HTTP#patch
  81. Net::HTTP#peer_cert
  82. Net::HTTP#post
  83. Net::HTTP#post2
  84. Net::HTTP#propfind
  85. Net::HTTP#proppatch
  86. Net::HTTP#proxy?
  87. Net::HTTP#proxy_from_env?
  88. Net::HTTP#proxyaddr
  89. Net::HTTP#proxyport
  90. Net::HTTP#read_timeout=
  91. Net::HTTP#request
  92. Net::HTTP#request_get
  93. Net::HTTP#request_head
  94. Net::HTTP#request_post
  95. Net::HTTP#send_entity
  96. Net::HTTP#send_request
  97. Net::HTTP#set_debug_output
  98. Net::HTTP#sspi_auth
  99. Net::HTTP#sspi_auth?
  100. Net::HTTP#start
  101. Net::HTTP#started?
  102. Net::HTTP#trace
  103. Net::HTTP#transport_request
  104. Net::HTTP#unescape
  105. Net::HTTP#unlock
  106. Net::HTTP#use_ssl=
  107. Net::HTTP#use_ssl?
  108. Net::HTTP#write_timeout=
  109. Net::HTTP::Copy
  110. Net::HTTP::Delete
  111. Net::HTTP::Get
  112. Net::HTTP::Head
  113. Net::HTTP::Lock
  114. Net::HTTP::Mkcol
  115. Net::HTTP::Move
  116. Net::HTTP::Options
  117. Net::HTTP::Patch
  118. Net::HTTP::Post
  119. Net::HTTP::Propfind
  120. Net::HTTP::Proppatch
  121. Net::HTTP::Put
  122. Net::HTTP::Trace
  123. Net::HTTP::Unlock
  124. Net::HTTPAccepted
  125. Net::HTTPAlreadyReported
  126. Net::HTTPBadGateway
  127. Net::HTTPBadRequest
  128. Net::HTTPClientError
  129. Net::HTTPConflict
  130. Net::HTTPContinue
  131. Net::HTTPCreated
  132. Net::HTTPEarlyHints
  133. Net::HTTPExceptions
  134. Net::HTTPExceptions#data
  135. Net::HTTPExceptions#response
  136. Net::HTTPExpectationFailed
  137. Net::HTTPFailedDependency
  138. Net::HTTPForbidden
  139. Net::HTTPFound
  140. Net::HTTPGatewayTimeout
  141. Net::HTTPGenericRequest
  142. Net::HTTPGenericRequest#body
  143. Net::HTTPGenericRequest#body_stream
  144. Net::HTTPGenericRequest#decode_content
  145. Net::HTTPGenericRequest#method
  146. Net::HTTPGenericRequest#path
  147. Net::HTTPGenericRequest#uri
  148. Net::HTTPGenericRequest::new
  149. Net::HTTPGenericRequest#body=
  150. Net::HTTPGenericRequest#body_exist?
  151. Net::HTTPGenericRequest#body_stream=
  152. Net::HTTPGenericRequest#encode_multipart_form_data
  153. Net::HTTPGenericRequest#flush_buffer
  154. Net::HTTPGenericRequest#inspect
  155. Net::HTTPGenericRequest#quote_string
  156. Net::HTTPGenericRequest#request_body_permitted?
  157. Net::HTTPGenericRequest#response_body_permitted?
  158. Net::HTTPGenericRequest#send_request_with_body
  159. Net::HTTPGenericRequest#send_request_with_body_data
  160. Net::HTTPGenericRequest#send_request_with_body_stream
  161. Net::HTTPGenericRequest#supply_default_content_type
  162. Net::HTTPGenericRequest#wait_for_continue
  163. Net::HTTPGenericRequest#write_header
  164. Net::HTTPGone
  165. Net::HTTPHeader
  166. Net::HTTPHeader#[]
  167. Net::HTTPHeader#[]=
  168. Net::HTTPHeader#add_field
  169. Net::HTTPHeader#append_field_value
  170. Net::HTTPHeader#basic_auth
  171. Net::HTTPHeader#basic_encode
  172. Net::HTTPHeader#canonical_each
  173. Net::HTTPHeader#capitalize
  174. Net::HTTPHeader#chunked?
  175. Net::HTTPHeader#connection_close?
  176. Net::HTTPHeader#connection_keep_alive?
  177. Net::HTTPHeader#content_length
  178. Net::HTTPHeader#content_length=
  179. Net::HTTPHeader#content_range
  180. Net::HTTPHeader#content_type
  181. Net::HTTPHeader#content_type=
  182. Net::HTTPHeader#delete
  183. Net::HTTPHeader#each
  184. Net::HTTPHeader#each_capitalized
  185. Net::HTTPHeader#each_capitalized_name
  186. Net::HTTPHeader#each_header
  187. Net::HTTPHeader#each_key
  188. Net::HTTPHeader#each_name
  189. Net::HTTPHeader#each_value
  190. Net::HTTPHeader#fetch
  191. Net::HTTPHeader#form_data=
  192. Net::HTTPHeader#get_fields
  193. Net::HTTPHeader#initialize_http_header
  194. Net::HTTPHeader#key?
  195. Net::HTTPHeader#main_type
  196. Net::HTTPHeader#proxy_basic_auth
  197. Net::HTTPHeader#range
  198. Net::HTTPHeader#range=
  199. Net::HTTPHeader#range_length
  200. Net::HTTPHeader#set_content_type
  201. Net::HTTPHeader#set_field
  202. Net::HTTPHeader#set_form
  203. Net::HTTPHeader#set_form_data
  204. Net::HTTPHeader#set_range
  205. Net::HTTPHeader#sub_type
  206. Net::HTTPHeader#to_hash
  207. Net::HTTPHeader#type_params
  208. Net::HTTPIMUsed
  209. Net::HTTPInformation
  210. Net::HTTPInsufficientStorage
  211. Net::HTTPInternalServerError
  212. Net::HTTPLengthRequired
  213. Net::HTTPLocked
  214. Net::HTTPLoopDetected
  215. Net::HTTPMethodNotAllowed
  216. Net::HTTPMisdirectedRequest
  217. Net::HTTPMovedPermanently
  218. Net::HTTPMultipleChoices
  219. Net::HTTPMultiStatus
  220. Net::HTTPNetworkAuthenticationRequired
  221. Net::HTTPNoContent
  222. Net::HTTPNonAuthoritativeInformation
  223. Net::HTTPNotAcceptable
  224. Net::HTTPNotExtended
  225. Net::HTTPNotFound
  226. Net::HTTPNotImplemented
  227. Net::HTTPNotModified
  228. Net::HTTPOK
  229. Net::HTTPPartialContent
  230. Net::HTTPPayloadTooLarge
  231. Net::HTTPPaymentRequired
  232. Net::HTTPPermanentRedirect
  233. Net::HTTPPreconditionFailed
  234. Net::HTTPPreconditionRequired
  235. Net::HTTPProcessing
  236. Net::HTTPProxyAuthenticationRequired
  237. Net::HTTPRangeNotSatisfiable
  238. Net::HTTPRedirection
  239. Net::HTTPRequest
  240. Net::HTTPRequest::new
  241. Net::HTTPRequestHeaderFieldsTooLarge
  242. Net::HTTPRequestTimeout
  243. Net::HTTPResetContent
  244. Net::HTTPResponse
  245. Net::HTTPResponse#code
  246. Net::HTTPResponse#decode_content
  247. Net::HTTPResponse#http_version
  248. Net::HTTPResponse#message
  249. Net::HTTPResponse#msg
  250. Net::HTTPResponse#uri
  251. Net::HTTPResponse::body_permitted?
  252. Net::HTTPResponse::each_response_header
  253. Net::HTTPResponse::read_status_line
  254. Net::HTTPResponse::response_class
  255. Net::HTTPResponse#body
  256. Net::HTTPResponse#body=
  257. Net::HTTPResponse#entity
  258. Net::HTTPResponse#inspect
  259. Net::HTTPResponse#procdest
  260. Net::HTTPResponse#read_body
  261. Net::HTTPResponse#read_body_0
  262. Net::HTTPResponse#stream_check
  263. Net::HTTPResponse#value
  264. Net::HTTPSeeOther
  265. Net::HTTPServerError
  266. Net::HTTPServiceUnavailable
  267. Net::HTTPSuccess
  268. Net::HTTPSwitchProtocol
  269. Net::HTTPTemporaryRedirect
  270. Net::HTTPTooManyRequests
  271. Net::HTTPUnauthorized
  272. Net::HTTPUnavailableForLegalReasons
  273. Net::HTTPUnknownResponse
  274. Net::HTTPUnprocessableEntity
  275. Net::HTTPUnsupportedMediaType
  276. Net::HTTPUpgradeRequired
  277. Net::HTTPURITooLong
  278. Net::HTTPUseProxy
  279. Net::HTTPVariantAlsoNegotiates
  280. Net::HTTPVersionNotSupported

NilClass

  1. NilClass
  2. NilClass#&
  3. NilClass#===
  4. NilClass#=~
  5. NilClass#^
  6. NilClass#|
  7. NilClass#inspect
  8. NilClass#nil?
  9. NilClass#rationalize
  10. NilClass#to_a
  11. NilClass#to_c
  12. NilClass#to_d
  13. NilClass#to_f
  14. NilClass#to_h
  15. NilClass#to_i
  16. NilClass#to_r
  17. NilClass#to_s

Numeric

  1. Numeric
  2. Numeric#%
  3. Numeric#+@
  4. Numeric#-@
  5. Numeric#<=>
  6. Numeric#abs
  7. Numeric#abs2
  8. Numeric#angle
  9. Numeric#arg
  10. Numeric#ceil
  11. Numeric#clone
  12. Numeric#coerce
  13. Numeric#conj
  14. Numeric#conjugate
  15. Numeric#denominator
  16. Numeric#div
  17. Numeric#divmod
  18. Numeric#dup
  19. Numeric#eql?
  20. Numeric#fdiv
  21. Numeric#finite?
  22. Numeric#floor
  23. Numeric#i
  24. Numeric#imag
  25. Numeric#imaginary
  26. Numeric#infinite?
  27. Numeric#integer?
  28. Numeric#magnitude
  29. Numeric#modulo
  30. Numeric#negative?
  31. Numeric#nonzero?
  32. Numeric#numerator
  33. Numeric#phase
  34. Numeric#polar
  35. Numeric#positive?
  36. Numeric#quo
  37. Numeric#real
  38. Numeric#real?
  39. Numeric#rect
  40. Numeric#rectangular
  41. Numeric#remainder
  42. Numeric#round
  43. Numeric#step
  44. Numeric#to_c
  45. Numeric#to_int
  46. Numeric#truncate
  47. Numeric#zero?

Object

  1. Object
  2. Object::yaml_tag
  3. Object#!~
  4. Object#<=>
  5. Object#===
  6. Object#=~
  7. Object#CSV
  8. Object#DelegateClass
  9. Object#Digest
  10. Object#define_singleton_method
  11. Object#display
  12. Object#dup
  13. Object#enum_for
  14. Object#eql?
  15. Object#extend
  16. Object#freeze
  17. Object#hash
  18. Object#inspect
  19. Object#instance_of?
  20. Object#instance_variable_defined?
  21. Object#instance_variable_get
  22. Object#instance_variable_set
  23. Object#instance_variables
  24. Object#is_a?
  25. Object#itself
  26. Object#kind_of?
  27. Object#method
  28. Object#methods
  29. Object#nil?
  30. Object#object_id
  31. Object#private_methods
  32. Object#protected_methods
  33. Object#public_method
  34. Object#public_methods
  35. Object#public_send
  36. Object#remove_instance_variable
  37. Object#respond_to?
  38. Object#respond_to_missing?
  39. Object#send
  40. Object#singleton_class
  41. Object#singleton_method
  42. Object#singleton_methods
  43. Object#taint
  44. Object#tainted?
  45. Object#to_enum
  46. Object#to_s
  47. Object#to_yaml
  48. Object#trust
  49. Object#untaint
  50. Object#untrust
  51. Object#untrusted?
  52. Object#xmp

ObjectSpace

  1. ObjectSpace
  2. ObjectSpace::allocation_class_path
  3. ObjectSpace::allocation_generation
  4. ObjectSpace::allocation_method_id
  5. ObjectSpace::allocation_sourcefile
  6. ObjectSpace::allocation_sourceline
  7. ObjectSpace::count_imemo_objects
  8. ObjectSpace::count_nodes
  9. ObjectSpace::count_objects
  10. ObjectSpace::count_objects_size
  11. ObjectSpace::count_symbols
  12. ObjectSpace::count_tdata_objects
  13. ObjectSpace::define_finalizer
  14. ObjectSpace::each_object
  15. ObjectSpace::garbage_collect
  16. ObjectSpace::internal_class_of
  17. ObjectSpace::internal_super_of
  18. ObjectSpace::memsize_of
  19. ObjectSpace::memsize_of_all
  20. ObjectSpace::reachable_objects_from
  21. ObjectSpace::reachable_objects_from_root
  22. ObjectSpace::trace_object_allocations
  23. ObjectSpace::trace_object_allocations_clear
  24. ObjectSpace::trace_object_allocations_debug_start
  25. ObjectSpace::trace_object_allocations_start
  26. ObjectSpace::trace_object_allocations_stop
  27. ObjectSpace::undefine_finalizer
  28. ObjectSpace#dump
  29. ObjectSpace#dump_all
  30. ObjectSpace#garbage_collect
  31. ObjectSpace::InternalObjectWrapper
  32. ObjectSpace::InternalObjectWrapper#inspect
  33. ObjectSpace::InternalObjectWrapper#internal_object_id
  34. ObjectSpace::InternalObjectWrapper#type
  35. ObjectSpace::WeakMap
  36. ObjectSpace::WeakMap#[]
  37. ObjectSpace::WeakMap#[]=
  38. ObjectSpace::WeakMap#each
  39. ObjectSpace::WeakMap#each_key
  40. ObjectSpace::WeakMap#each_pair
  41. ObjectSpace::WeakMap#each_value
  42. ObjectSpace::WeakMap#include?
  43. ObjectSpace::WeakMap#inspect
  44. ObjectSpace::WeakMap#key?
  45. ObjectSpace::WeakMap#keys
  46. ObjectSpace::WeakMap#length
  47. ObjectSpace::WeakMap#member?
  48. ObjectSpace::WeakMap#size
  49. ObjectSpace::WeakMap#values

Observable

  1. Observable
  2. Observable#add_observer
  3. Observable#changed
  4. Observable#changed?
  5. Observable#count_observers
  6. Observable#delete_observer
  7. Observable#delete_observers
  8. Observable#notify_observers

Open3

  1. Open3
  2. Open3::capture2
  3. Open3::capture2e
  4. Open3::capture3
  5. Open3::pipeline
  6. Open3::pipeline_r
  7. Open3::pipeline_rw
  8. Open3::pipeline_start
  9. Open3::pipeline_w
  10. Open3::popen2
  11. Open3::popen2e
  12. Open3::popen3
  13. Open3#capture2
  14. Open3#capture2e
  15. Open3#capture3
  16. Open3#pipeline
  17. Open3#pipeline_r
  18. Open3#pipeline_rw
  19. Open3#pipeline_start
  20. Open3#pipeline_w
  21. Open3#popen2
  22. Open3#popen2e
  23. Open3#popen3

OpenSSL

  1. OpenSSL
  2. OpenSSL::Digest
  3. OpenSSL::debug
  4. OpenSSL::debug=
  5. OpenSSL::errors
  6. OpenSSL::fips_mode
  7. OpenSSL::fips_mode=
  8. OpenSSL::fixed_length_secure_compare
  9. OpenSSL::mem_check_start
  10. OpenSSL::print_mem_leaks
  11. OpenSSL::secure_compare
  12. OpenSSL#Digest
  13. OpenSSL::ASN1
  14. OpenSSL::ASN1::decode
  15. OpenSSL::ASN1::decode_all
  16. OpenSSL::ASN1::traverse
  17. OpenSSL::ASN1::ASN1Data
  18. OpenSSL::ASN1::ASN1Data#indefinite_length
  19. OpenSSL::ASN1::ASN1Data#infinite_length
  20. OpenSSL::ASN1::ASN1Data#tag
  21. OpenSSL::ASN1::ASN1Data#tag_class
  22. OpenSSL::ASN1::ASN1Data#value
  23. OpenSSL::ASN1::ASN1Data::new
  24. OpenSSL::ASN1::ASN1Data#to_der
  25. OpenSSL::ASN1::ASN1Error
  26. OpenSSL::ASN1::Constructive
  27. OpenSSL::ASN1::Constructive#tagging
  28. OpenSSL::ASN1::Constructive::new
  29. OpenSSL::ASN1::Constructive#each
  30. OpenSSL::ASN1::Constructive#to_der
  31. OpenSSL::ASN1::ObjectId
  32. OpenSSL::ASN1::ObjectId::register
  33. OpenSSL::ASN1::ObjectId#==
  34. OpenSSL::ASN1::ObjectId#ln
  35. OpenSSL::ASN1::ObjectId#long_name
  36. OpenSSL::ASN1::ObjectId#oid
  37. OpenSSL::ASN1::ObjectId#short_name
  38. OpenSSL::ASN1::ObjectId#sn
  39. OpenSSL::ASN1::Primitive
  40. OpenSSL::ASN1::Primitive#tagging
  41. OpenSSL::ASN1::Primitive::new
  42. OpenSSL::ASN1::Primitive#to_der
  43. OpenSSL::BN
  44. OpenSSL::BN::generate_prime
  45. OpenSSL::BN::new
  46. OpenSSL::BN::rand
  47. OpenSSL::BN::rand_range
  48. OpenSSL::BN#%
  49. OpenSSL::BN#*
  50. OpenSSL::BN#**
  51. OpenSSL::BN#+
  52. OpenSSL::BN#+@
  53. OpenSSL::BN#-
  54. OpenSSL::BN#-@
  55. OpenSSL::BN#/
  56. OpenSSL::BN#<<
  57. OpenSSL::BN#<=>
  58. OpenSSL::BN#==
  59. OpenSSL::BN#===
  60. OpenSSL::BN#>>
  61. OpenSSL::BN#abs
  62. OpenSSL::BN#bit_set?
  63. OpenSSL::BN#clear_bit!
  64. OpenSSL::BN#cmp
  65. OpenSSL::BN#coerce
  66. OpenSSL::BN#copy
  67. OpenSSL::BN#eql?
  68. OpenSSL::BN#gcd
  69. OpenSSL::BN#get_flags
  70. OpenSSL::BN#hash
  71. OpenSSL::BN#initialize_copy
  72. OpenSSL::BN#lshift!
  73. OpenSSL::BN#mod_add
  74. OpenSSL::BN#mod_exp
  75. OpenSSL::BN#mod_inverse
  76. OpenSSL::BN#mod_mul
  77. OpenSSL::BN#mod_sqr
  78. OpenSSL::BN#mod_sub
  79. OpenSSL::BN#negative?
  80. OpenSSL::BN#num_bits
  81. OpenSSL::BN#num_bytes
  82. OpenSSL::BN#odd?
  83. OpenSSL::BN#one?
  84. OpenSSL::BN#pretty_print
  85. OpenSSL::BN#prime?
  86. OpenSSL::BN#prime_fasttest?
  87. OpenSSL::BN#rshift!
  88. OpenSSL::BN#set_bit!
  89. OpenSSL::BN#set_flags
  90. OpenSSL::BN#sqr
  91. OpenSSL::BN#to_bn
  92. OpenSSL::BN#to_i
  93. OpenSSL::BN#to_int
  94. OpenSSL::BN#to_s
  95. OpenSSL::BN#ucmp
  96. OpenSSL::BN#zero?
  97. OpenSSL::BNError
  98. OpenSSL::Buffering
  99. OpenSSL::Buffering#sync
  100. OpenSSL::Buffering::new
  101. OpenSSL::Buffering#<<
  102. OpenSSL::Buffering#close
  103. OpenSSL::Buffering#consume_rbuff
  104. OpenSSL::Buffering#do_write
  105. OpenSSL::Buffering#each
  106. OpenSSL::Buffering#each_byte
  107. OpenSSL::Buffering#each_line
  108. OpenSSL::Buffering#eof
  109. OpenSSL::Buffering#eof?
  110. OpenSSL::Buffering#fill_rbuff
  111. OpenSSL::Buffering#flush
  112. OpenSSL::Buffering#getbyte
  113. OpenSSL::Buffering#getc
  114. OpenSSL::Buffering#gets
  115. OpenSSL::Buffering#print
  116. OpenSSL::Buffering#printf
  117. OpenSSL::Buffering#puts
  118. OpenSSL::Buffering#read
  119. OpenSSL::Buffering#read_nonblock
  120. OpenSSL::Buffering#readchar
  121. OpenSSL::Buffering#readline
  122. OpenSSL::Buffering#readlines
  123. OpenSSL::Buffering#readpartial
  124. OpenSSL::Buffering#ungetc
  125. OpenSSL::Buffering#write
  126. OpenSSL::Buffering#write_nonblock
  127. OpenSSL::Buffering::Buffer
  128. OpenSSL::Buffering::Buffer::new
  129. OpenSSL::Buffering::Buffer#<<
  130. OpenSSL::Buffering::Buffer#concat
  131. OpenSSL::Cipher
  132. OpenSSL::Cipher::ciphers
  133. OpenSSL::Cipher::new
  134. OpenSSL::Cipher#auth_data=
  135. OpenSSL::Cipher#auth_tag
  136. OpenSSL::Cipher#auth_tag=
  137. OpenSSL::Cipher#auth_tag_len=
  138. OpenSSL::Cipher#authenticated?
  139. OpenSSL::Cipher#block_size
  140. OpenSSL::Cipher#ccm_data_len=
  141. OpenSSL::Cipher#decrypt
  142. OpenSSL::Cipher#encrypt
  143. OpenSSL::Cipher#final
  144. OpenSSL::Cipher#initialize_copy
  145. OpenSSL::Cipher#iv=
  146. OpenSSL::Cipher#iv_len
  147. OpenSSL::Cipher#iv_len=
  148. OpenSSL::Cipher#key=
  149. OpenSSL::Cipher#key_len
  150. OpenSSL::Cipher#key_len=
  151. OpenSSL::Cipher#name
  152. OpenSSL::Cipher#padding=
  153. OpenSSL::Cipher#pkcs5_keyivgen
  154. OpenSSL::Cipher#random_iv
  155. OpenSSL::Cipher#random_key
  156. OpenSSL::Cipher#reset
  157. OpenSSL::Cipher#update
  158. OpenSSL::Cipher::Cipher
  159. OpenSSL::Config
  160. OpenSSL::Config::new
  161. OpenSSL::Config::parse
  162. OpenSSL::Config::parse_config
  163. OpenSSL::Config#[]
  164. OpenSSL::Config#each
  165. OpenSSL::Config#get_value
  166. OpenSSL::Config#initialize_copy
  167. OpenSSL::Config#inspect
  168. OpenSSL::Config#sections
  169. OpenSSL::Config#to_s
  170. OpenSSL::ConfigError
  171. OpenSSL::Digest
  172. OpenSSL::Digest::digest
  173. OpenSSL::Digest::new
  174. OpenSSL::Digest#<<
  175. OpenSSL::Digest#block_length
  176. OpenSSL::Digest#digest_length
  177. OpenSSL::Digest#finish
  178. OpenSSL::Digest#initialize_copy
  179. OpenSSL::Digest#name
  180. OpenSSL::Digest#reset
  181. OpenSSL::Digest#update
  182. OpenSSL::Digest::DigestError
  183. OpenSSL::Engine
  184. OpenSSL::Engine::by_id
  185. OpenSSL::Engine::cleanup
  186. OpenSSL::Engine::engines
  187. OpenSSL::Engine::load
  188. OpenSSL::Engine#cipher
  189. OpenSSL::Engine#cmds
  190. OpenSSL::Engine#ctrl_cmd
  191. OpenSSL::Engine#digest
  192. OpenSSL::Engine#finish
  193. OpenSSL::Engine#id
  194. OpenSSL::Engine#inspect
  195. OpenSSL::Engine#load_private_key
  196. OpenSSL::Engine#load_public_key
  197. OpenSSL::Engine#name
  198. OpenSSL::Engine#set_default
  199. OpenSSL::Engine::EngineError
  200. OpenSSL::ExtConfig
  201. OpenSSL::HMAC
  202. OpenSSL::HMAC::base64digest
  203. OpenSSL::HMAC::digest
  204. OpenSSL::HMAC::hexdigest
  205. OpenSSL::HMAC::new
  206. OpenSSL::HMAC#<<
  207. OpenSSL::HMAC#==
  208. OpenSSL::HMAC#base64digest
  209. OpenSSL::HMAC#digest
  210. OpenSSL::HMAC#hexdigest
  211. OpenSSL::HMAC#initialize_copy
  212. OpenSSL::HMAC#inspect
  213. OpenSSL::HMAC#reset
  214. OpenSSL::HMAC#to_s
  215. OpenSSL::HMAC#update
  216. OpenSSL::HMACError
  217. OpenSSL::KDF
  218. OpenSSL::KDF::hkdf
  219. OpenSSL::KDF::pbkdf2_hmac
  220. OpenSSL::KDF::scrypt
  221. OpenSSL::KDF::KDFError
  222. OpenSSL::Marshal
  223. OpenSSL::Marshal::included
  224. OpenSSL::Marshal::ClassMethods
  225. OpenSSL::Netscape
  226. OpenSSL::Netscape::SPKI
  227. OpenSSL::Netscape::SPKI::new
  228. OpenSSL::Netscape::SPKI#challenge
  229. OpenSSL::Netscape::SPKI#challenge=
  230. OpenSSL::Netscape::SPKI#public_key
  231. OpenSSL::Netscape::SPKI#public_key=
  232. OpenSSL::Netscape::SPKI#sign
  233. OpenSSL::Netscape::SPKI#to_der
  234. OpenSSL::Netscape::SPKI#to_pem
  235. OpenSSL::Netscape::SPKI#to_s
  236. OpenSSL::Netscape::SPKI#to_text
  237. OpenSSL::Netscape::SPKI#verify
  238. OpenSSL::Netscape::SPKIError
  239. OpenSSL::OCSP
  240. OpenSSL::OCSP::BasicResponse
  241. OpenSSL::OCSP::BasicResponse::new
  242. OpenSSL::OCSP::BasicResponse#add_nonce
  243. OpenSSL::OCSP::BasicResponse#add_status
  244. OpenSSL::OCSP::BasicResponse#copy_nonce
  245. OpenSSL::OCSP::BasicResponse#find_response
  246. OpenSSL::OCSP::BasicResponse#initialize_copy
  247. OpenSSL::OCSP::BasicResponse#responses
  248. OpenSSL::OCSP::BasicResponse#sign
  249. OpenSSL::OCSP::BasicResponse#status
  250. OpenSSL::OCSP::BasicResponse#to_der
  251. OpenSSL::OCSP::BasicResponse#verify
  252. OpenSSL::OCSP::CertificateId
  253. OpenSSL::OCSP::CertificateId::new
  254. OpenSSL::OCSP::CertificateId#cmp
  255. OpenSSL::OCSP::CertificateId#cmp_issuer
  256. OpenSSL::OCSP::CertificateId#hash_algorithm
  257. OpenSSL::OCSP::CertificateId#initialize_copy
  258. OpenSSL::OCSP::CertificateId#issuer_key_hash
  259. OpenSSL::OCSP::CertificateId#issuer_name_hash
  260. OpenSSL::OCSP::CertificateId#serial
  261. OpenSSL::OCSP::CertificateId#to_der
  262. OpenSSL::OCSP::OCSPError
  263. OpenSSL::OCSP::Request
  264. OpenSSL::OCSP::Request::new
  265. OpenSSL::OCSP::Request#add_certid
  266. OpenSSL::OCSP::Request#add_nonce
  267. OpenSSL::OCSP::Request#certid
  268. OpenSSL::OCSP::Request#check_nonce
  269. OpenSSL::OCSP::Request#initialize_copy
  270. OpenSSL::OCSP::Request#sign
  271. OpenSSL::OCSP::Request#signed?
  272. OpenSSL::OCSP::Request#to_der
  273. OpenSSL::OCSP::Request#verify
  274. OpenSSL::OCSP::Response
  275. OpenSSL::OCSP::Response::create
  276. OpenSSL::OCSP::Response::new
  277. OpenSSL::OCSP::Response#basic
  278. OpenSSL::OCSP::Response#initialize_copy
  279. OpenSSL::OCSP::Response#status
  280. OpenSSL::OCSP::Response#status_string
  281. OpenSSL::OCSP::Response#to_der
  282. OpenSSL::OCSP::SingleResponse
  283. OpenSSL::OCSP::SingleResponse::new
  284. OpenSSL::OCSP::SingleResponse#cert_status
  285. OpenSSL::OCSP::SingleResponse#certid
  286. OpenSSL::OCSP::SingleResponse#check_validity
  287. OpenSSL::OCSP::SingleResponse#extensions
  288. OpenSSL::OCSP::SingleResponse#initialize_copy
  289. OpenSSL::OCSP::SingleResponse#next_update
  290. OpenSSL::OCSP::SingleResponse#revocation_reason
  291. OpenSSL::OCSP::SingleResponse#revocation_time
  292. OpenSSL::OCSP::SingleResponse#this_update
  293. OpenSSL::OCSP::SingleResponse#to_der
  294. OpenSSL::OpenSSLError
  295. OpenSSL::PKCS12
  296. OpenSSL::PKCS12#ca_certs
  297. OpenSSL::PKCS12#certificate
  298. OpenSSL::PKCS12#key
  299. OpenSSL::PKCS12::create
  300. OpenSSL::PKCS12::new
  301. OpenSSL::PKCS12#initialize_copy
  302. OpenSSL::PKCS12#to_der
  303. OpenSSL::PKCS5
  304. OpenSSL::PKCS5#pbkdf2_hmac
  305. OpenSSL::PKCS5#pbkdf2_hmac_sha1
  306. OpenSSL::PKCS7
  307. OpenSSL::PKCS7#data
  308. OpenSSL::PKCS7#error_string
  309. OpenSSL::PKCS7::encrypt
  310. OpenSSL::PKCS7::new
  311. OpenSSL::PKCS7::read_smime
  312. OpenSSL::PKCS7::sign
  313. OpenSSL::PKCS7::write_smime
  314. OpenSSL::PKCS7#add_certificate
  315. OpenSSL::PKCS7#add_crl
  316. OpenSSL::PKCS7#add_data
  317. OpenSSL::PKCS7#add_recipient
  318. OpenSSL::PKCS7#add_signer
  319. OpenSSL::PKCS7#certificates
  320. OpenSSL::PKCS7#certificates=
  321. OpenSSL::PKCS7#cipher=
  322. OpenSSL::PKCS7#crls
  323. OpenSSL::PKCS7#crls=
  324. OpenSSL::PKCS7#data=
  325. OpenSSL::PKCS7#decrypt
  326. OpenSSL::PKCS7#detached
  327. OpenSSL::PKCS7#detached=
  328. OpenSSL::PKCS7#detached?
  329. OpenSSL::PKCS7#initialize_copy
  330. OpenSSL::PKCS7#recipients
  331. OpenSSL::PKCS7#signers
  332. OpenSSL::PKCS7#to_der
  333. OpenSSL::PKCS7#to_pem
  334. OpenSSL::PKCS7#to_s
  335. OpenSSL::PKCS7#type
  336. OpenSSL::PKCS7#type=
  337. OpenSSL::PKCS7#verify
  338. OpenSSL::PKCS7::RecipientInfo
  339. OpenSSL::PKCS7::RecipientInfo::new
  340. OpenSSL::PKCS7::RecipientInfo#enc_key
  341. OpenSSL::PKCS7::RecipientInfo#issuer
  342. OpenSSL::PKCS7::RecipientInfo#serial
  343. OpenSSL::PKCS7::SignerInfo
  344. OpenSSL::PKCS7::SignerInfo::new
  345. OpenSSL::PKCS7::SignerInfo#issuer
  346. OpenSSL::PKCS7::SignerInfo#serial
  347. OpenSSL::PKCS7::SignerInfo#signed_time
  348. OpenSSL::PKey
  349. OpenSSL::PKey::generate_key
  350. OpenSSL::PKey::generate_parameters
  351. OpenSSL::PKey::read
  352. OpenSSL::PKey::DH
  353. OpenSSL::PKey::DH::generate
  354. OpenSSL::PKey::DH::new
  355. OpenSSL::PKey::DH#compute_key
  356. OpenSSL::PKey::DH#export
  357. OpenSSL::PKey::DH#generate_key!
  358. OpenSSL::PKey::DH#initialize_copy
  359. OpenSSL::PKey::DH#params
  360. OpenSSL::PKey::DH#params_ok?
  361. OpenSSL::PKey::DH#private?
  362. OpenSSL::PKey::DH#public?
  363. OpenSSL::PKey::DH#public_key
  364. OpenSSL::PKey::DH#set_key
  365. OpenSSL::PKey::DH#set_pqg
  366. OpenSSL::PKey::DH#to_der
  367. OpenSSL::PKey::DH#to_pem
  368. OpenSSL::PKey::DH#to_s
  369. OpenSSL::PKey::DHError
  370. OpenSSL::PKey::DSA
  371. OpenSSL::PKey::DSA::generate
  372. OpenSSL::PKey::DSA::new
  373. OpenSSL::PKey::DSA#export
  374. OpenSSL::PKey::DSA#initialize_copy
  375. OpenSSL::PKey::DSA#params
  376. OpenSSL::PKey::DSA#private?
  377. OpenSSL::PKey::DSA#public?
  378. OpenSSL::PKey::DSA#public_key
  379. OpenSSL::PKey::DSA#set_key
  380. OpenSSL::PKey::DSA#set_pqg
  381. OpenSSL::PKey::DSA#syssign
  382. OpenSSL::PKey::DSA#sysverify
  383. OpenSSL::PKey::DSA#to_der
  384. OpenSSL::PKey::DSA#to_pem
  385. OpenSSL::PKey::DSA#to_s
  386. OpenSSL::PKey::DSAError
  387. OpenSSL::PKey::EC
  388. OpenSSL::PKey::EC::builtin_curves
  389. OpenSSL::PKey::EC::generate
  390. OpenSSL::PKey::EC::new
  391. OpenSSL::PKey::EC#check_key
  392. OpenSSL::PKey::EC#dh_compute_key
  393. OpenSSL::PKey::EC#dsa_sign_asn1
  394. OpenSSL::PKey::EC#dsa_verify_asn1
  395. OpenSSL::PKey::EC#export
  396. OpenSSL::PKey::EC#generate_key
  397. OpenSSL::PKey::EC#generate_key!
  398. OpenSSL::PKey::EC#group
  399. OpenSSL::PKey::EC#group=
  400. OpenSSL::PKey::EC#initialize_copy
  401. OpenSSL::PKey::EC#private?
  402. OpenSSL::PKey::EC#private_key
  403. OpenSSL::PKey::EC#private_key=
  404. OpenSSL::PKey::EC#private_key?
  405. OpenSSL::PKey::EC#public?
  406. OpenSSL::PKey::EC#public_key
  407. OpenSSL::PKey::EC#public_key=
  408. OpenSSL::PKey::EC#public_key?
  409. OpenSSL::PKey::EC#to_der
  410. OpenSSL::PKey::EC#to_pem
  411. OpenSSL::PKey::EC::Group
  412. OpenSSL::PKey::EC::Group::new
  413. OpenSSL::PKey::EC::Group#==
  414. OpenSSL::PKey::EC::Group#asn1_flag
  415. OpenSSL::PKey::EC::Group#asn1_flag=
  416. OpenSSL::PKey::EC::Group#cofactor
  417. OpenSSL::PKey::EC::Group#curve_name
  418. OpenSSL::PKey::EC::Group#degree
  419. OpenSSL::PKey::EC::Group#eql?
  420. OpenSSL::PKey::EC::Group#generator
  421. OpenSSL::PKey::EC::Group#initialize_copy
  422. OpenSSL::PKey::EC::Group#order
  423. OpenSSL::PKey::EC::Group#point_conversion_form
  424. OpenSSL::PKey::EC::Group#point_conversion_form=
  425. OpenSSL::PKey::EC::Group#seed
  426. OpenSSL::PKey::EC::Group#seed=
  427. OpenSSL::PKey::EC::Group#set_generator
  428. OpenSSL::PKey::EC::Group#to_der
  429. OpenSSL::PKey::EC::Group#to_pem
  430. OpenSSL::PKey::EC::Group#to_text
  431. OpenSSL::PKey::EC::Point
  432. OpenSSL::PKey::EC::Point#group
  433. OpenSSL::PKey::EC::Point::new
  434. OpenSSL::PKey::EC::Point#==
  435. OpenSSL::PKey::EC::Point#add
  436. OpenSSL::PKey::EC::Point#eql?
  437. OpenSSL::PKey::EC::Point#infinity?
  438. OpenSSL::PKey::EC::Point#initialize_copy
  439. OpenSSL::PKey::EC::Point#invert!
  440. OpenSSL::PKey::EC::Point#make_affine!
  441. OpenSSL::PKey::EC::Point#mul
  442. OpenSSL::PKey::EC::Point#on_curve?
  443. OpenSSL::PKey::EC::Point#set_to_infinity!
  444. OpenSSL::PKey::EC::Point#to_bn
  445. OpenSSL::PKey::EC::Point#to_octet_string
  446. OpenSSL::PKey::PKey
  447. OpenSSL::PKey::PKey::new
  448. OpenSSL::PKey::PKey#compare?
  449. OpenSSL::PKey::PKey#decrypt
  450. OpenSSL::PKey::PKey#derive
  451. OpenSSL::PKey::PKey#encrypt
  452. OpenSSL::PKey::PKey#initialize_copy
  453. OpenSSL::PKey::PKey#inspect
  454. OpenSSL::PKey::PKey#oid
  455. OpenSSL::PKey::PKey#private_to_der
  456. OpenSSL::PKey::PKey#private_to_pem
  457. OpenSSL::PKey::PKey#public_to_der
  458. OpenSSL::PKey::PKey#public_to_pem
  459. OpenSSL::PKey::PKey#sign
  460. OpenSSL::PKey::PKey#sign_raw
  461. OpenSSL::PKey::PKey#to_text
  462. OpenSSL::PKey::PKey#verify
  463. OpenSSL::PKey::PKey#verify_raw
  464. OpenSSL::PKey::PKey#verify_recover
  465. OpenSSL::PKey::PKeyError
  466. OpenSSL::PKey::RSA
  467. OpenSSL::PKey::RSA::generate
  468. OpenSSL::PKey::RSA::new
  469. OpenSSL::PKey::RSA#export
  470. OpenSSL::PKey::RSA#initialize_copy
  471. OpenSSL::PKey::RSA#params
  472. OpenSSL::PKey::RSA#private?
  473. OpenSSL::PKey::RSA#private_decrypt
  474. OpenSSL::PKey::RSA#private_encrypt
  475. OpenSSL::PKey::RSA#public?
  476. OpenSSL::PKey::RSA#public_decrypt
  477. OpenSSL::PKey::RSA#public_encrypt
  478. OpenSSL::PKey::RSA#public_key
  479. OpenSSL::PKey::RSA#set_crt_params
  480. OpenSSL::PKey::RSA#set_factors
  481. OpenSSL::PKey::RSA#set_key
  482. OpenSSL::PKey::RSA#sign_pss
  483. OpenSSL::PKey::RSA#to_der
  484. OpenSSL::PKey::RSA#to_pem
  485. OpenSSL::PKey::RSA#to_s
  486. OpenSSL::PKey::RSA#translate_padding_mode
  487. OpenSSL::PKey::RSA#verify_pss
  488. OpenSSL::PKey::RSAError
  489. OpenSSL::Random
  490. OpenSSL::Random::egd
  491. OpenSSL::Random::egd_bytes
  492. OpenSSL::Random::load_random_file
  493. OpenSSL::Random::random_add
  494. OpenSSL::Random::random_bytes
  495. OpenSSL::Random::seed
  496. OpenSSL::Random::status?
  497. OpenSSL::Random::write_random_file
  498. OpenSSL::SSL
  499. OpenSSL::SSL::verify_certificate_identity
  500. OpenSSL::SSL#verify_certificate_identity
  501. OpenSSL::SSL::Session
  502. OpenSSL::SSL::Session::new
  503. OpenSSL::SSL::Session#==
  504. OpenSSL::SSL::Session#id
  505. OpenSSL::SSL::Session#initialize_copy
  506. OpenSSL::SSL::Session#time
  507. OpenSSL::SSL::Session#time=
  508. OpenSSL::SSL::Session#timeout
  509. OpenSSL::SSL::Session#timeout=
  510. OpenSSL::SSL::Session#to_der
  511. OpenSSL::SSL::Session#to_pem
  512. OpenSSL::SSL::Session#to_text
  513. OpenSSL::SSL::SocketForwarder
  514. OpenSSL::SSL::SocketForwarder#addr
  515. OpenSSL::SSL::SocketForwarder#closed?
  516. OpenSSL::SSL::SocketForwarder#do_not_reverse_lookup=
  517. OpenSSL::SSL::SocketForwarder#fcntl
  518. OpenSSL::SSL::SocketForwarder#fileno
  519. OpenSSL::SSL::SocketForwarder#getsockopt
  520. OpenSSL::SSL::SocketForwarder#peeraddr
  521. OpenSSL::SSL::SocketForwarder#setsockopt
  522. OpenSSL::SSL::SSLContext
  523. OpenSSL::SSL::SSLContext#alpn_protocols
  524. OpenSSL::SSL::SSLContext#alpn_select_cb
  525. OpenSSL::SSL::SSLContext#ca_file
  526. OpenSSL::SSL::SSLContext#ca_path
  527. OpenSSL::SSL::SSLContext#cert
  528. OpenSSL::SSL::SSLContext#cert_store
  529. OpenSSL::SSL::SSLContext#client_ca
  530. OpenSSL::SSL::SSLContext#client_cert_cb
  531. OpenSSL::SSL::SSLContext#extra_chain_cert
  532. OpenSSL::SSL::SSLContext#key
  533. OpenSSL::SSL::SSLContext#npn_protocols
  534. OpenSSL::SSL::SSLContext#npn_select_cb
  535. OpenSSL::SSL::SSLContext#renegotiation_cb
  536. OpenSSL::SSL::SSLContext#servername_cb
  537. OpenSSL::SSL::SSLContext#session_get_cb
  538. OpenSSL::SSL::SSLContext#session_id_context
  539. OpenSSL::SSL::SSLContext#session_new_cb
  540. OpenSSL::SSL::SSLContext#session_remove_cb
  541. OpenSSL::SSL::SSLContext#ssl_timeout
  542. OpenSSL::SSL::SSLContext#timeout
  543. OpenSSL::SSL::SSLContext#tmp_dh_callback
  544. OpenSSL::SSL::SSLContext#verify_callback
  545. OpenSSL::SSL::SSLContext#verify_depth
  546. OpenSSL::SSL::SSLContext#verify_hostname
  547. OpenSSL::SSL::SSLContext#verify_mode
  548. OpenSSL::SSL::SSLContext::new
  549. OpenSSL::SSL::SSLContext#add_certificate
  550. OpenSSL::SSL::SSLContext#ciphers
  551. OpenSSL::SSL::SSLContext#ciphers=
  552. OpenSSL::SSL::SSLContext#ecdh_curves=
  553. OpenSSL::SSL::SSLContext#enable_fallback_scsv
  554. OpenSSL::SSL::SSLContext#flush_sessions
  555. OpenSSL::SSL::SSLContext#freeze
  556. OpenSSL::SSL::SSLContext#max_version=
  557. OpenSSL::SSL::SSLContext#min_version=
  558. OpenSSL::SSL::SSLContext#options
  559. OpenSSL::SSL::SSLContext#options=
  560. OpenSSL::SSL::SSLContext#security_level
  561. OpenSSL::SSL::SSLContext#security_level=
  562. OpenSSL::SSL::SSLContext#session_add
  563. OpenSSL::SSL::SSLContext#session_cache_mode
  564. OpenSSL::SSL::SSLContext#session_cache_mode=
  565. OpenSSL::SSL::SSLContext#session_cache_size
  566. OpenSSL::SSL::SSLContext#session_cache_size=
  567. OpenSSL::SSL::SSLContext#session_cache_stats
  568. OpenSSL::SSL::SSLContext#session_remove
  569. OpenSSL::SSL::SSLContext#set_minmax_proto_version
  570. OpenSSL::SSL::SSLContext#set_params
  571. OpenSSL::SSL::SSLContext#setup
  572. OpenSSL::SSL::SSLContext#ssl_version=
  573. OpenSSL::SSL::SSLContext#tmp_dh=
  574. OpenSSL::SSL::SSLError
  575. OpenSSL::SSL::SSLServer
  576. OpenSSL::SSL::SSLServer#start_immediately
  577. OpenSSL::SSL::SSLServer::new
  578. OpenSSL::SSL::SSLServer#accept
  579. OpenSSL::SSL::SSLServer#close
  580. OpenSSL::SSL::SSLServer#listen
  581. OpenSSL::SSL::SSLServer#shutdown
  582. OpenSSL::SSL::SSLServer#to_io
  583. OpenSSL::SSL::SSLSocket
  584. OpenSSL::SSL::SSLSocket#context
  585. OpenSSL::SSL::SSLSocket#hostname
  586. OpenSSL::SSL::SSLSocket#io
  587. OpenSSL::SSL::SSLSocket#sync_close
  588. OpenSSL::SSL::SSLSocket#to_io
  589. OpenSSL::SSL::SSLSocket::new
  590. OpenSSL::SSL::SSLSocket::open
  591. OpenSSL::SSL::SSLSocket#accept
  592. OpenSSL::SSL::SSLSocket#accept_nonblock
  593. OpenSSL::SSL::SSLSocket#alpn_protocol
  594. OpenSSL::SSL::SSLSocket#cert
  595. OpenSSL::SSL::SSLSocket#cipher
  596. OpenSSL::SSL::SSLSocket#client_ca
  597. OpenSSL::SSL::SSLSocket#client_cert_cb
  598. OpenSSL::SSL::SSLSocket#connect
  599. OpenSSL::SSL::SSLSocket#connect_nonblock
  600. OpenSSL::SSL::SSLSocket#finished_message
  601. OpenSSL::SSL::SSLSocket#hostname=
  602. OpenSSL::SSL::SSLSocket#npn_protocol
  603. OpenSSL::SSL::SSLSocket#peer_cert
  604. OpenSSL::SSL::SSLSocket#peer_cert_chain
  605. OpenSSL::SSL::SSLSocket#peer_finished_message
  606. OpenSSL::SSL::SSLSocket#pending
  607. OpenSSL::SSL::SSLSocket#post_connection_check
  608. OpenSSL::SSL::SSLSocket#session
  609. OpenSSL::SSL::SSLSocket#session=
  610. OpenSSL::SSL::SSLSocket#session_get_cb
  611. OpenSSL::SSL::SSLSocket#session_new_cb
  612. OpenSSL::SSL::SSLSocket#session_reused?
  613. OpenSSL::SSL::SSLSocket#ssl_version
  614. OpenSSL::SSL::SSLSocket#state
  615. OpenSSL::SSL::SSLSocket#stop
  616. OpenSSL::SSL::SSLSocket#sysclose
  617. OpenSSL::SSL::SSLSocket#sysread
  618. OpenSSL::SSL::SSLSocket#sysread_nonblock
  619. OpenSSL::SSL::SSLSocket#syswrite
  620. OpenSSL::SSL::SSLSocket#syswrite_nonblock
  621. OpenSSL::SSL::SSLSocket#tmp_dh_callback
  622. OpenSSL::SSL::SSLSocket#tmp_key
  623. OpenSSL::SSL::SSLSocket#using_anon_cipher?
  624. OpenSSL::SSL::SSLSocket#verify_result
  625. OpenSSL::Timestamp
  626. OpenSSL::Timestamp::Factory
  627. OpenSSL::Timestamp::Factory#additional_certs
  628. OpenSSL::Timestamp::Factory#allowed_digests
  629. OpenSSL::Timestamp::Factory#default_policy_id
  630. OpenSSL::Timestamp::Factory#gen_time
  631. OpenSSL::Timestamp::Factory#serial_number
  632. OpenSSL::Timestamp::Factory#create_timestamp
  633. OpenSSL::Timestamp::Request
  634. OpenSSL::Timestamp::Request::new
  635. OpenSSL::Timestamp::Request#algorithm
  636. OpenSSL::Timestamp::Request#algorithm=
  637. OpenSSL::Timestamp::Request#cert_requested=
  638. OpenSSL::Timestamp::Request#cert_requested?
  639. OpenSSL::Timestamp::Request#message_imprint
  640. OpenSSL::Timestamp::Request#message_imprint=
  641. OpenSSL::Timestamp::Request#nonce
  642. OpenSSL::Timestamp::Request#nonce=
  643. OpenSSL::Timestamp::Request#policy_id
  644. OpenSSL::Timestamp::Request#policy_id=
  645. OpenSSL::Timestamp::Request#to_der
  646. OpenSSL::Timestamp::Request#version=
  647. OpenSSL::Timestamp::Response
  648. OpenSSL::Timestamp::Response::new
  649. OpenSSL::Timestamp::Response#failure_info
  650. OpenSSL::Timestamp::Response#status
  651. OpenSSL::Timestamp::Response#status_text
  652. OpenSSL::Timestamp::Response#to_der
  653. OpenSSL::Timestamp::Response#token
  654. OpenSSL::Timestamp::Response#token_info
  655. OpenSSL::Timestamp::Response#tsa_certificate
  656. OpenSSL::Timestamp::Response#verify
  657. OpenSSL::Timestamp::TimestampError
  658. OpenSSL::Timestamp::TokenInfo
  659. OpenSSL::Timestamp::TokenInfo::new
  660. OpenSSL::Timestamp::TokenInfo#algorithm
  661. OpenSSL::Timestamp::TokenInfo#gen_time
  662. OpenSSL::Timestamp::TokenInfo#message_imprint
  663. OpenSSL::Timestamp::TokenInfo#nonce
  664. OpenSSL::Timestamp::TokenInfo#ordering
  665. OpenSSL::Timestamp::TokenInfo#policy_id
  666. OpenSSL::Timestamp::TokenInfo#serial_number
  667. OpenSSL::Timestamp::TokenInfo#to_der
  668. OpenSSL::X509::Attribute
  669. OpenSSL::X509::Attribute::new
  670. OpenSSL::X509::Attribute#==
  671. OpenSSL::X509::Attribute#initialize_copy
  672. OpenSSL::X509::Attribute#oid
  673. OpenSSL::X509::Attribute#oid=
  674. OpenSSL::X509::Attribute#to_der
  675. OpenSSL::X509::Attribute#value
  676. OpenSSL::X509::Attribute#value=
  677. OpenSSL::X509::Certificate
  678. OpenSSL::X509::Certificate::load
  679. OpenSSL::X509::Certificate::load_file
  680. OpenSSL::X509::Certificate::new
  681. OpenSSL::X509::Certificate#==
  682. OpenSSL::X509::Certificate#add_extension
  683. OpenSSL::X509::Certificate#check_private_key
  684. OpenSSL::X509::Certificate#extensions
  685. OpenSSL::X509::Certificate#extensions=
  686. OpenSSL::X509::Certificate#initialize_copy
  687. OpenSSL::X509::Certificate#inspect
  688. OpenSSL::X509::Certificate#issuer
  689. OpenSSL::X509::Certificate#issuer=
  690. OpenSSL::X509::Certificate#not_after
  691. OpenSSL::X509::Certificate#not_after=
  692. OpenSSL::X509::Certificate#not_before
  693. OpenSSL::X509::Certificate#not_before=
  694. OpenSSL::X509::Certificate#pretty_print
  695. OpenSSL::X509::Certificate#public_key
  696. OpenSSL::X509::Certificate#public_key=
  697. OpenSSL::X509::Certificate#serial
  698. OpenSSL::X509::Certificate#serial=
  699. OpenSSL::X509::Certificate#sign
  700. OpenSSL::X509::Certificate#signature_algorithm
  701. OpenSSL::X509::Certificate#subject
  702. OpenSSL::X509::Certificate#subject=
  703. OpenSSL::X509::Certificate#to_der
  704. OpenSSL::X509::Certificate#to_pem
  705. OpenSSL::X509::Certificate#to_s
  706. OpenSSL::X509::Certificate#to_text
  707. OpenSSL::X509::Certificate#verify
  708. OpenSSL::X509::Certificate#version=
  709. OpenSSL::X509::CRL
  710. OpenSSL::X509::CRL::new
  711. OpenSSL::X509::CRL#==
  712. OpenSSL::X509::CRL#add_extension
  713. OpenSSL::X509::CRL#add_revoked
  714. OpenSSL::X509::CRL#extensions
  715. OpenSSL::X509::CRL#extensions=
  716. OpenSSL::X509::CRL#initialize_copy
  717. OpenSSL::X509::CRL#issuer
  718. OpenSSL::X509::CRL#issuer=
  719. OpenSSL::X509::CRL#last_update
  720. OpenSSL::X509::CRL#last_update=
  721. OpenSSL::X509::CRL#next_update
  722. OpenSSL::X509::CRL#next_update=
  723. OpenSSL::X509::CRL#revoked
  724. OpenSSL::X509::CRL#revoked=
  725. OpenSSL::X509::CRL#sign
  726. OpenSSL::X509::CRL#signature_algorithm
  727. OpenSSL::X509::CRL#to_der
  728. OpenSSL::X509::CRL#to_pem
  729. OpenSSL::X509::CRL#to_s
  730. OpenSSL::X509::CRL#to_text
  731. OpenSSL::X509::CRL#verify
  732. OpenSSL::X509::CRL#version=
  733. OpenSSL::X509::Extension
  734. OpenSSL::X509::Extension::new
  735. OpenSSL::X509::Extension#==
  736. OpenSSL::X509::Extension#critical=
  737. OpenSSL::X509::Extension#critical?
  738. OpenSSL::X509::Extension#initialize_copy
  739. OpenSSL::X509::Extension#oid
  740. OpenSSL::X509::Extension#oid=
  741. OpenSSL::X509::Extension#to_a
  742. OpenSSL::X509::Extension#to_der
  743. OpenSSL::X509::Extension#to_h
  744. OpenSSL::X509::Extension#to_s
  745. OpenSSL::X509::Extension#value
  746. OpenSSL::X509::Extension#value=
  747. OpenSSL::X509::Extension#value_der
  748. OpenSSL::X509::Extension::AuthorityInfoAccess
  749. OpenSSL::X509::Extension::AuthorityInfoAccess#ca_issuer_uris
  750. OpenSSL::X509::Extension::AuthorityInfoAccess#ocsp_uris
  751. OpenSSL::X509::Extension::AuthorityInfoAccess#parse_aia_asn1
  752. OpenSSL::X509::Extension::AuthorityKeyIdentifier
  753. OpenSSL::X509::Extension::AuthorityKeyIdentifier#authority_key_identifier
  754. OpenSSL::X509::Extension::CRLDistributionPoints
  755. OpenSSL::X509::Extension::CRLDistributionPoints#crl_uris
  756. OpenSSL::X509::Extension::Helpers
  757. OpenSSL::X509::Extension::Helpers#find_extension
  758. OpenSSL::X509::Extension::SubjectKeyIdentifier
  759. OpenSSL::X509::Extension::SubjectKeyIdentifier#subject_key_identifier
  760. OpenSSL::X509::ExtensionFactory
  761. OpenSSL::X509::ExtensionFactory#config
  762. OpenSSL::X509::ExtensionFactory#crl
  763. OpenSSL::X509::ExtensionFactory#issuer_certificate
  764. OpenSSL::X509::ExtensionFactory#subject_certificate
  765. OpenSSL::X509::ExtensionFactory#subject_request
  766. OpenSSL::X509::ExtensionFactory::new
  767. OpenSSL::X509::ExtensionFactory#create_ext
  768. OpenSSL::X509::ExtensionFactory#create_ext_from_array
  769. OpenSSL::X509::ExtensionFactory#create_ext_from_hash
  770. OpenSSL::X509::ExtensionFactory#create_ext_from_string
  771. OpenSSL::X509::ExtensionFactory#create_extension
  772. OpenSSL::X509::ExtensionFactory#crl=
  773. OpenSSL::X509::ExtensionFactory#issuer_certificate=
  774. OpenSSL::X509::ExtensionFactory#subject_certificate=
  775. OpenSSL::X509::ExtensionFactory#subject_request=
  776. OpenSSL::X509::Name
  777. OpenSSL::X509::Name::new
  778. OpenSSL::X509::Name::parse
  779. OpenSSL::X509::Name::parse_openssl
  780. OpenSSL::X509::Name::parse_rfc2253
  781. OpenSSL::X509::Name#<=>
  782. OpenSSL::X509::Name#add_entry
  783. OpenSSL::X509::Name#cmp
  784. OpenSSL::X509::Name#eql?
  785. OpenSSL::X509::Name#hash
  786. OpenSSL::X509::Name#hash_old
  787. OpenSSL::X509::Name#initialize_copy
  788. OpenSSL::X509::Name#pretty_print
  789. OpenSSL::X509::Name#to_a
  790. OpenSSL::X509::Name#to_der
  791. OpenSSL::X509::Name#to_s
  792. OpenSSL::X509::Name#to_utf8
  793. OpenSSL::X509::Name::RFC2253DN
  794. OpenSSL::X509::Name::RFC2253DN#expand_hexstring
  795. OpenSSL::X509::Name::RFC2253DN#expand_pair
  796. OpenSSL::X509::Name::RFC2253DN#expand_value
  797. OpenSSL::X509::Name::RFC2253DN#scan
  798. OpenSSL::X509::Request
  799. OpenSSL::X509::Request::new
  800. OpenSSL::X509::Request#==
  801. OpenSSL::X509::Request#add_attribute
  802. OpenSSL::X509::Request#attributes
  803. OpenSSL::X509::Request#attributes=
  804. OpenSSL::X509::Request#initialize_copy
  805. OpenSSL::X509::Request#public_key
  806. OpenSSL::X509::Request#public_key=
  807. OpenSSL::X509::Request#sign
  808. OpenSSL::X509::Request#signature_algorithm
  809. OpenSSL::X509::Request#subject
  810. OpenSSL::X509::Request#subject=
  811. OpenSSL::X509::Request#to_der
  812. OpenSSL::X509::Request#to_pem
  813. OpenSSL::X509::Request#to_s
  814. OpenSSL::X509::Request#to_text
  815. OpenSSL::X509::Request#verify
  816. OpenSSL::X509::Request#version=
  817. OpenSSL::X509::Revoked
  818. OpenSSL::X509::Revoked::new
  819. OpenSSL::X509::Revoked#==
  820. OpenSSL::X509::Revoked#add_extension
  821. OpenSSL::X509::Revoked#extensions
  822. OpenSSL::X509::Revoked#extensions=
  823. OpenSSL::X509::Revoked#initialize_copy
  824. OpenSSL::X509::Revoked#serial
  825. OpenSSL::X509::Revoked#serial=
  826. OpenSSL::X509::Revoked#time
  827. OpenSSL::X509::Revoked#time=
  828. OpenSSL::X509::Revoked#to_der
  829. OpenSSL::X509::Store
  830. OpenSSL::X509::Store#chain
  831. OpenSSL::X509::Store#error
  832. OpenSSL::X509::Store#error_string
  833. OpenSSL::X509::Store#verify_callback
  834. OpenSSL::X509::Store::new
  835. OpenSSL::X509::Store#add_cert
  836. OpenSSL::X509::Store#add_crl
  837. OpenSSL::X509::Store#add_file
  838. OpenSSL::X509::Store#add_path
  839. OpenSSL::X509::Store#flags=
  840. OpenSSL::X509::Store#purpose=
  841. OpenSSL::X509::Store#set_default_paths
  842. OpenSSL::X509::Store#time=
  843. OpenSSL::X509::Store#trust=
  844. OpenSSL::X509::Store#verify
  845. OpenSSL::X509::Store#verify_callback=
  846. OpenSSL::X509::StoreContext
  847. OpenSSL::X509::StoreContext::new
  848. OpenSSL::X509::StoreContext#chain
  849. OpenSSL::X509::StoreContext#cleanup
  850. OpenSSL::X509::StoreContext#current_cert
  851. OpenSSL::X509::StoreContext#current_crl
  852. OpenSSL::X509::StoreContext#error
  853. OpenSSL::X509::StoreContext#error=
  854. OpenSSL::X509::StoreContext#error_depth
  855. OpenSSL::X509::StoreContext#error_string
  856. OpenSSL::X509::StoreContext#flags=
  857. OpenSSL::X509::StoreContext#purpose=
  858. OpenSSL::X509::StoreContext#time=
  859. OpenSSL::X509::StoreContext#trust=
  860. OpenSSL::X509::StoreContext#verify

OpenStruct

  1. OpenStruct
  2. OpenStruct::json_create
  3. OpenStruct::new
  4. OpenStruct#==
  5. OpenStruct#[]
  6. OpenStruct#[]=
  7. OpenStruct#as_json
  8. OpenStruct#delete_field
  9. OpenStruct#dig
  10. OpenStruct#each_pair
  11. OpenStruct#eql?
  12. OpenStruct#freeze
  13. OpenStruct#inspect
  14. OpenStruct#set_ostruct_member_value!
  15. OpenStruct#to_h
  16. OpenStruct#to_json
  17. OpenStruct#to_s

OpenURI

  1. OpenURI
  2. OpenURI::HTTPError
  3. OpenURI::HTTPError#io
  4. OpenURI::HTTPError::new
  5. OpenURI::HTTPRedirect
  6. OpenURI::HTTPRedirect#uri
  7. OpenURI::HTTPRedirect::new
  8. OpenURI::Meta
  9. OpenURI::Meta#base_uri
  10. OpenURI::Meta#meta
  11. OpenURI::Meta#metas
  12. OpenURI::Meta#status
  13. OpenURI::Meta#charset
  14. OpenURI::Meta#content_encoding
  15. OpenURI::Meta#content_type
  16. OpenURI::Meta#last_modified
  17. OpenURI::OpenRead
  18. OpenURI::OpenRead#open
  19. OpenURI::OpenRead#read

OptionParser

  1. OptionParser
  2. OptionParser#banner
  3. OptionParser#default_argv
  4. OptionParser#program_name
  5. OptionParser#release
  6. OptionParser#require_exact
  7. OptionParser#set_banner
  8. OptionParser#set_program_name
  9. OptionParser#set_summary_indent
  10. OptionParser#set_summary_width
  11. OptionParser#summary_indent
  12. OptionParser#summary_width
  13. OptionParser::accept
  14. OptionParser::each_const
  15. OptionParser::getopts
  16. OptionParser::inc
  17. OptionParser::new
  18. OptionParser::reject
  19. OptionParser::search_const
  20. OptionParser::show_version
  21. OptionParser::terminate
  22. OptionParser::top
  23. OptionParser::with
  24. OptionParser#abort
  25. OptionParser#accept
  26. OptionParser#additional_message
  27. OptionParser#base
  28. OptionParser#candidate
  29. OptionParser#def_head_option
  30. OptionParser#def_option
  31. OptionParser#def_tail_option
  32. OptionParser#define
  33. OptionParser#define_by_keywords
  34. OptionParser#define_head
  35. OptionParser#define_tail
  36. OptionParser#environment
  37. OptionParser#getopts
  38. OptionParser#help
  39. OptionParser#inc
  40. OptionParser#load
  41. OptionParser#make_switch
  42. OptionParser#new
  43. OptionParser#on
  44. OptionParser#on_head
  45. OptionParser#on_tail
  46. OptionParser#order
  47. OptionParser#order!
  48. OptionParser#parse
  49. OptionParser#parse!
  50. OptionParser#permute
  51. OptionParser#permute!
  52. OptionParser#reject
  53. OptionParser#remove
  54. OptionParser#separator
  55. OptionParser#summarize
  56. OptionParser#terminate
  57. OptionParser#to_a
  58. OptionParser#to_s
  59. OptionParser#top
  60. OptionParser#ver
  61. OptionParser#warn
  62. OptionParser::AC
  63. OptionParser::AC#ac_arg_disable
  64. OptionParser::AC#ac_arg_enable
  65. OptionParser::AC#ac_arg_with
  66. OptionParser::Acceptables
  67. OptionParser::AmbiguousArgument
  68. OptionParser::AmbiguousOption
  69. OptionParser::Arguable
  70. OptionParser::Arguable::extend_object
  71. OptionParser::Arguable::new
  72. OptionParser::Arguable#getopts
  73. OptionParser::Arguable#options
  74. OptionParser::Arguable#options=
  75. OptionParser::Arguable#order!
  76. OptionParser::Arguable#parse!
  77. OptionParser::Arguable#permute!
  78. OptionParser::CompletingHash
  79. OptionParser::CompletingHash#match
  80. OptionParser::Completion
  81. OptionParser::Completion::candidate
  82. OptionParser::Completion::regexp
  83. OptionParser::Completion#candidate
  84. OptionParser::Completion#complete
  85. OptionParser::Completion#convert
  86. OptionParser::InvalidArgument
  87. OptionParser::InvalidOption
  88. OptionParser::List
  89. OptionParser::List#atype
  90. OptionParser::List#list
  91. OptionParser::List#long
  92. OptionParser::List#short
  93. OptionParser::List::new
  94. OptionParser::List#accept
  95. OptionParser::List#append
  96. OptionParser::List#complete
  97. OptionParser::List#each_option
  98. OptionParser::List#get_candidates
  99. OptionParser::List#prepend
  100. OptionParser::List#reject
  101. OptionParser::List#search
  102. OptionParser::List#summarize
  103. OptionParser::MissingArgument
  104. OptionParser::NeedlessArgument
  105. OptionParser::OptionMap
  106. OptionParser::ParseError
  107. OptionParser::ParseError#additional
  108. OptionParser::ParseError#args
  109. OptionParser::ParseError#reason
  110. OptionParser::ParseError::filter_backtrace
  111. OptionParser::ParseError::new
  112. OptionParser::ParseError#inspect
  113. OptionParser::ParseError#message
  114. OptionParser::ParseError#recover
  115. OptionParser::ParseError#set_backtrace
  116. OptionParser::ParseError#set_option
  117. OptionParser::ParseError#to_s
  118. OptionParser::Switch
  119. OptionParser::Switch#arg
  120. OptionParser::Switch#block
  121. OptionParser::Switch#conv
  122. OptionParser::Switch#desc
  123. OptionParser::Switch#long
  124. OptionParser::Switch#pattern
  125. OptionParser::Switch#short
  126. OptionParser::Switch::guess
  127. OptionParser::Switch::incompatible_argument_styles
  128. OptionParser::Switch::new
  129. OptionParser::Switch::pattern
  130. OptionParser::Switch#summarize
  131. OptionParser::Switch#switch_name
  132. OptionParser::Switch::NoArgument
  133. OptionParser::Switch::NoArgument::incompatible_argument_styles
  134. OptionParser::Switch::NoArgument::pattern
  135. OptionParser::Switch::NoArgument#parse
  136. OptionParser::Switch::OptionalArgument
  137. OptionParser::Switch::OptionalArgument#parse
  138. OptionParser::Switch::PlacedArgument
  139. OptionParser::Switch::PlacedArgument#parse
  140. OptionParser::Switch::RequiredArgument
  141. OptionParser::Switch::RequiredArgument#parse

Pathname

  1. Pathname
  2. Pathname::getwd
  3. Pathname::glob
  4. Pathname::new
  5. Pathname::pwd
  6. Pathname#+
  7. Pathname#/
  8. Pathname#<=>
  9. Pathname#==
  10. Pathname#===
  11. Pathname#absolute?
  12. Pathname#ascend
  13. Pathname#atime
  14. Pathname#basename
  15. Pathname#binread
  16. Pathname#binwrite
  17. Pathname#birthtime
  18. Pathname#blockdev?
  19. Pathname#chardev?
  20. Pathname#children
  21. Pathname#chmod
  22. Pathname#chown
  23. Pathname#cleanpath
  24. Pathname#ctime
  25. Pathname#delete
  26. Pathname#descend
  27. Pathname#directory?
  28. Pathname#dirname
  29. Pathname#each_child
  30. Pathname#each_entry
  31. Pathname#each_filename
  32. Pathname#each_line
  33. Pathname#empty?
  34. Pathname#entries
  35. Pathname#eql?
  36. Pathname#executable?
  37. Pathname#executable_real?
  38. Pathname#exist?
  39. Pathname#expand_path
  40. Pathname#extname
  41. Pathname#file?
  42. Pathname#find
  43. Pathname#fnmatch
  44. Pathname#fnmatch?
  45. Pathname#freeze
  46. Pathname#ftype
  47. Pathname#glob
  48. Pathname#grpowned?
  49. Pathname#join
  50. Pathname#lchmod
  51. Pathname#lchown
  52. Pathname#lstat
  53. Pathname#make_link
  54. Pathname#make_symlink
  55. Pathname#mkdir
  56. Pathname#mkpath
  57. Pathname#mountpoint?
  58. Pathname#mtime
  59. Pathname#open
  60. Pathname#opendir
  61. Pathname#owned?
  62. Pathname#parent
  63. Pathname#pipe?
  64. Pathname#read
  65. Pathname#readable?
  66. Pathname#readable_real?
  67. Pathname#readlines
  68. Pathname#readlink
  69. Pathname#realdirpath
  70. Pathname#realpath
  71. Pathname#relative?
  72. Pathname#relative_path_from
  73. Pathname#rename
  74. Pathname#rmdir
  75. Pathname#rmtree
  76. Pathname#root?
  77. Pathname#setgid?
  78. Pathname#setuid?
  79. Pathname#size
  80. Pathname#size?
  81. Pathname#socket?
  82. Pathname#split
  83. Pathname#stat
  84. Pathname#sticky?
  85. Pathname#sub
  86. Pathname#sub_ext
  87. Pathname#symlink?
  88. Pathname#sysopen
  89. Pathname#taint
  90. Pathname#to_path
  91. Pathname#to_s
  92. Pathname#truncate
  93. Pathname#unlink
  94. Pathname#untaint
  95. Pathname#utime
  96. Pathname#world_readable?
  97. Pathname#world_writable?
  98. Pathname#writable?
  99. Pathname#writable_real?
  100. Pathname#write
  101. Pathname#zero?

PrettyPrint

  1. PP
  2. PP::pp
  3. PP::sharing_detection
  4. PP::sharing_detection=
  5. PP::singleline_pp
  6. PP::width_for
  7. PP::PPMethods
  8. PP::PPMethods#check_inspect_key
  9. PP::PPMethods#comma_breakable
  10. PP::PPMethods#guard_inspect_key
  11. PP::PPMethods#object_address_group
  12. PP::PPMethods#object_group
  13. PP::PPMethods#pop_inspect_key
  14. PP::PPMethods#pp
  15. PP::PPMethods#pp_hash
  16. PP::PPMethods#pp_object
  17. PP::PPMethods#push_inspect_key
  18. PP::PPMethods#seplist
  19. PrettyPrint
  20. PrettyPrint#genspace
  21. PrettyPrint#group_queue
  22. PrettyPrint#indent
  23. PrettyPrint#maxwidth
  24. PrettyPrint#newline
  25. PrettyPrint#output
  26. PrettyPrint::format
  27. PrettyPrint::new
  28. PrettyPrint::singleline_format
  29. PrettyPrint#break_outmost_groups
  30. PrettyPrint#breakable
  31. PrettyPrint#current_group
  32. PrettyPrint#fill_breakable
  33. PrettyPrint#flush
  34. PrettyPrint#group
  35. PrettyPrint#group_sub
  36. PrettyPrint#nest
  37. PrettyPrint#text
  38. PrettyPrint::SingleLine
  39. PrettyPrint::SingleLine::new
  40. PrettyPrint::SingleLine#breakable
  41. PrettyPrint::SingleLine#first?
  42. PrettyPrint::SingleLine#group
  43. PrettyPrint::SingleLine#text

Proc

  1. Proc
  2. Proc::new
  3. Proc#<<
  4. Proc#==
  5. Proc#===
  6. Proc#>>
  7. Proc#[]
  8. Proc#arity
  9. Proc#binding
  10. Proc#call
  11. Proc#curry
  12. Proc#eql?
  13. Proc#hash
  14. Proc#inspect
  15. Proc#lambda?
  16. Proc#parameters
  17. Proc#ruby2_keywords
  18. Proc#source_location
  19. Proc#to_proc
  20. Proc#to_s
  21. Proc#yield

Process

  1. Process
  2. Process::abort
  3. Process::argv0
  4. Process::clock_getres
  5. Process::clock_gettime
  6. Process::daemon
  7. Process::detach
  8. Process::egid
  9. Process::egid=
  10. Process::euid
  11. Process::euid=
  12. Process::exec
  13. Process::exit
  14. Process::exit!
  15. Process::fork
  16. Process::getpgid
  17. Process::getpgrp
  18. Process::getpriority
  19. Process::getrlimit
  20. Process::getsid
  21. Process::gid
  22. Process::gid=
  23. Process::groups
  24. Process::groups=
  25. Process::initgroups
  26. Process::kill
  27. Process::last_status
  28. Process::maxgroups
  29. Process::maxgroups=
  30. Process::pid
  31. Process::ppid
  32. Process::setpgid
  33. Process::setpgrp
  34. Process::setpriority
  35. Process::setproctitle
  36. Process::setrlimit
  37. Process::setsid
  38. Process::spawn
  39. Process::times
  40. Process::uid
  41. Process::uid=
  42. Process::wait
  43. Process::wait2
  44. Process::waitall
  45. Process::waitpid
  46. Process::waitpid2
  47. Process::GID
  48. Process::GID::change_privilege
  49. Process::GID::eid
  50. Process::GID::from_name
  51. Process::GID::grant_privilege
  52. Process::GID::re_exchange
  53. Process::GID::re_exchangeable?
  54. Process::GID::rid
  55. Process::GID::sid_available?
  56. Process::GID::switch
  57. Process::Status
  58. Process::Status::wait
  59. Process::Status#&
  60. Process::Status#==
  61. Process::Status#>>
  62. Process::Status#coredump?
  63. Process::Status#exited?
  64. Process::Status#exitstatus
  65. Process::Status#inspect
  66. Process::Status#pid
  67. Process::Status#signaled?
  68. Process::Status#stopped?
  69. Process::Status#stopsig
  70. Process::Status#success?
  71. Process::Status#termsig
  72. Process::Status#to_i
  73. Process::Status#to_s
  74. Process::Sys
  75. Process::Sys::getegid
  76. Process::Sys::geteuid
  77. Process::Sys::getgid
  78. Process::Sys::getuid
  79. Process::Sys::issetugid
  80. Process::Sys::setegid
  81. Process::Sys::seteuid
  82. Process::Sys::setgid
  83. Process::Sys::setregid
  84. Process::Sys::setresgid
  85. Process::Sys::setresuid
  86. Process::Sys::setreuid
  87. Process::Sys::setrgid
  88. Process::Sys::setruid
  89. Process::Sys::setuid
  90. Process::UID
  91. Process::UID::change_privilege
  92. Process::UID::eid
  93. Process::UID::from_name
  94. Process::UID::grant_privilege
  95. Process::UID::re_exchange
  96. Process::UID::re_exchangeable?
  97. Process::UID::rid
  98. Process::UID::sid_available?
  99. Process::UID::switch

PStore

  1. PStore
  2. PStore#ultra_safe
  3. PStore::new
  4. PStore#[]
  5. PStore#[]=
  6. PStore#abort
  7. PStore#commit
  8. PStore#delete
  9. PStore#empty_marshal_checksum
  10. PStore#empty_marshal_data
  11. PStore#fetch
  12. PStore#in_transaction
  13. PStore#in_transaction_wr
  14. PStore#load_data
  15. PStore#on_windows?
  16. PStore#open_and_lock_file
  17. PStore#path
  18. PStore#root?
  19. PStore#roots
  20. PStore#save_data
  21. PStore#save_data_with_atomic_file_rename_strategy
  22. PStore#save_data_with_fast_strategy
  23. PStore#transaction
  24. PStore::Error

YAML

  1. Psych
  2. Psych::dump
  3. Psych::dump_stream
  4. Psych::libyaml_version
  5. Psych::load
  6. Psych::load_file
  7. Psych::load_stream
  8. Psych::parse
  9. Psych::parse_file
  10. Psych::parse_stream
  11. Psych::parser
  12. Psych::safe_dump
  13. Psych::safe_load
  14. Psych::safe_load_file
  15. Psych::to_json
  16. Psych::unsafe_load
  17. Psych::unsafe_load_file
  18. YAML
  19. YAML::DBM
  20. YAML::DBM#[]
  21. YAML::DBM#[]=
  22. YAML::DBM#delete
  23. YAML::DBM#delete_if
  24. YAML::DBM#each
  25. YAML::DBM#each_pair
  26. YAML::DBM#each_value
  27. YAML::DBM#fetch
  28. YAML::DBM#has_value?
  29. YAML::DBM#index
  30. YAML::DBM#invert
  31. YAML::DBM#key
  32. YAML::DBM#reject
  33. YAML::DBM#replace
  34. YAML::DBM#select
  35. YAML::DBM#shift
  36. YAML::DBM#store
  37. YAML::DBM#to_a
  38. YAML::DBM#to_hash
  39. YAML::DBM#update
  40. YAML::DBM#values
  41. YAML::DBM#values_at
  42. YAML::Store
  43. YAML::Store::new

PTY

  1. PTY
  2. PTY::check
  3. PTY::getpty
  4. PTY::open
  5. PTY::spawn
  6. PTY::ChildExited
  7. PTY::ChildExited#status

Ractor

  1. Ractor
  2. Ractor::count
  3. Ractor::current
  4. Ractor::main
  5. Ractor::make_shareable
  6. Ractor::new
  7. Ractor::receive
  8. Ractor::receive_if
  9. Ractor::recv
  10. Ractor::select
  11. Ractor::shareable?
  12. Ractor::yield
  13. Ractor#<<
  14. Ractor#[]
  15. Ractor#[]=
  16. Ractor#close_incoming
  17. Ractor#close_outgoing
  18. Ractor#inspect
  19. Ractor#name
  20. Ractor#receive
  21. Ractor#receive_if
  22. Ractor#recv
  23. Ractor#send
  24. Ractor#take
  25. Ractor#to_s
  26. Ractor::ClosedError
  27. Ractor::MovedError
  28. Ractor::MovedObject
  29. Ractor::MovedObject#!
  30. Ractor::MovedObject#!=
  31. Ractor::MovedObject#==
  32. Ractor::MovedObject#equal?
  33. Ractor::MovedObject#instance_eval
  34. Ractor::MovedObject#instance_exec
  35. Ractor::MovedObject#method_missing
  36. Ractor::RemoteError
  37. Ractor::RemoteError#ractor

Random

  1. Random
  2. Random::bytes
  3. Random::new
  4. Random::new_seed
  5. Random::rand
  6. Random::seed
  7. Random::srand
  8. Random::urandom
  9. Random#==
  10. Random#bytes
  11. Random#rand
  12. Random#seed
  13. Random::Formatter
  14. Random::Formatter#alphanumeric
  15. Random::Formatter#base64
  16. Random::Formatter#choose
  17. Random::Formatter#gen_random
  18. Random::Formatter#hex
  19. Random::Formatter#rand
  20. Random::Formatter#random_bytes
  21. Random::Formatter#random_number
  22. Random::Formatter#urlsafe_base64
  23. Random::Formatter#uuid

Range

  1. Range
  2. Range::json_create
  3. Range::new
  4. Range#%
  5. Range#==
  6. Range#===
  7. Range#as_json
  8. Range#begin
  9. Range#bsearch
  10. Range#count
  11. Range#cover?
  12. Range#each
  13. Range#end
  14. Range#entries
  15. Range#eql?
  16. Range#exclude_end?
  17. Range#first
  18. Range#hash
  19. Range#include?
  20. Range#inspect
  21. Range#last
  22. Range#max
  23. Range#member?
  24. Range#min
  25. Range#minmax
  26. Range#size
  27. Range#step
  28. Range#to_a
  29. Range#to_json
  30. Range#to_s

Rational

  1. Rational
  2. Rational::json_create
  3. Rational#*
  4. Rational#**
  5. Rational#+
  6. Rational#-
  7. Rational#-@
  8. Rational#/
  9. Rational#<=>
  10. Rational#==
  11. Rational#abs
  12. Rational#as_json
  13. Rational#ceil
  14. Rational#denominator
  15. Rational#fdiv
  16. Rational#floor
  17. Rational#hash
  18. Rational#inspect
  19. Rational#magnitude
  20. Rational#negative?
  21. Rational#numerator
  22. Rational#positive?
  23. Rational#quo
  24. Rational#rationalize
  25. Rational#round
  26. Rational#to_d
  27. Rational#to_f
  28. Rational#to_i
  29. Rational#to_json
  30. Rational#to_r
  31. Rational#to_s
  32. Rational#truncate

Readline

  1. Readline
  2. Readline::basic_quote_characters
  3. Readline::basic_quote_characters=
  4. Readline::basic_word_break_characters
  5. Readline::basic_word_break_characters=
  6. Readline::completer_quote_characters
  7. Readline::completer_quote_characters=
  8. Readline::completer_word_break_characters
  9. Readline::completer_word_break_characters=
  10. Readline::completion_append_character
  11. Readline::completion_append_character=
  12. Readline::completion_case_fold
  13. Readline::completion_case_fold=
  14. Readline::completion_proc
  15. Readline::completion_proc=
  16. Readline::completion_quote_character
  17. Readline::delete_text
  18. Readline::emacs_editing_mode
  19. Readline::emacs_editing_mode?
  20. Readline::filename_quote_characters
  21. Readline::filename_quote_characters=
  22. Readline::get_screen_size
  23. Readline::input=
  24. Readline::insert_text
  25. Readline::line_buffer
  26. Readline::output=
  27. Readline::point
  28. Readline::point=
  29. Readline::pre_input_hook
  30. Readline::pre_input_hook=
  31. Readline::quoting_detection_proc
  32. Readline::quoting_detection_proc=
  33. Readline::readline
  34. Readline::redisplay
  35. Readline::refresh_line
  36. Readline::set_screen_size
  37. Readline::special_prefixes
  38. Readline::special_prefixes=
  39. Readline::vi_editing_mode
  40. Readline::vi_editing_mode?

Regexp

  1. Regexp
  2. Regexp::compile
  3. Regexp::escape
  4. Regexp::json_create
  5. Regexp::last_match
  6. Regexp::new
  7. Regexp::quote
  8. Regexp::try_convert
  9. Regexp::union
  10. Regexp#==
  11. Regexp#===
  12. Regexp#=~
  13. Regexp#as_json
  14. Regexp#casefold?
  15. Regexp#encoding
  16. Regexp#eql?
  17. Regexp#fixed_encoding?
  18. Regexp#hash
  19. Regexp#inspect
  20. Regexp#match
  21. Regexp#match?
  22. Regexp#named_captures
  23. Regexp#names
  24. Regexp#options
  25. Regexp#source
  26. Regexp#to_json
  27. Regexp#to_s
  28. Regexp#~

Reline

  1. Reline
  2. Reline::core
  3. Reline::encoding_system_needs
  4. Reline::insert_text
  5. Reline::line_editor
  6. Reline::ungetc
  7. Reline::ANSI
  8. Reline::ANSI::clear_screen
  9. Reline::ANSI::cursor_pos
  10. Reline::ANSI::deprep
  11. Reline::ANSI::empty_buffer?
  12. Reline::ANSI::encoding
  13. Reline::ANSI::erase_after_cursor
  14. Reline::ANSI::get_screen_size
  15. Reline::ANSI::getc
  16. Reline::ANSI::getc_with_bracketed_paste
  17. Reline::ANSI::hide_cursor
  18. Reline::ANSI::in_pasting?
  19. Reline::ANSI::inner_getc
  20. Reline::ANSI::input=
  21. Reline::ANSI::move_cursor_column
  22. Reline::ANSI::move_cursor_down
  23. Reline::ANSI::move_cursor_up
  24. Reline::ANSI::output=
  25. Reline::ANSI::prep
  26. Reline::ANSI::retrieve_keybuffer
  27. Reline::ANSI::scroll_down
  28. Reline::ANSI::set_default_key_bindings
  29. Reline::ANSI::set_default_key_bindings_comprehensive_list
  30. Reline::ANSI::set_default_key_bindings_terminfo
  31. Reline::ANSI::set_screen_size
  32. Reline::ANSI::set_winch_handler
  33. Reline::ANSI::show_cursor
  34. Reline::ANSI::ungetc
  35. Reline::ANSI::win?
  36. Reline::Config
  37. Reline::Config#test_mode
  38. Reline::Config::new
  39. Reline::Config#add_default_key_binding
  40. Reline::Config#add_default_key_binding_by_keymap
  41. Reline::Config#add_oneshot_key_binding
  42. Reline::Config#autocompletion
  43. Reline::Config#autocompletion=
  44. Reline::Config#bind_key
  45. Reline::Config#bind_variable
  46. Reline::Config#default_inputrc_path
  47. Reline::Config#editing_mode
  48. Reline::Config#editing_mode=
  49. Reline::Config#editing_mode_is?
  50. Reline::Config#handle_directive
  51. Reline::Config#inputrc_path
  52. Reline::Config#key_bindings
  53. Reline::Config#key_notation_to_code
  54. Reline::Config#keymap
  55. Reline::Config#parse_keyseq
  56. Reline::Config#read
  57. Reline::Config#read_lines
  58. Reline::Config#reset
  59. Reline::Config#reset_default_key_bindings
  60. Reline::Config#reset_oneshot_key_bindings
  61. Reline::Config#retrieve_string
  62. Reline::Config#seven_bit_encoding?
  63. Reline::Config::InvalidInputrc
  64. Reline::Config::InvalidInputrc#file
  65. Reline::Config::InvalidInputrc#lineno
  66. Reline::Core
  67. Reline::Core#config
  68. Reline::Core#key_stroke
  69. Reline::Core#last_incremental_search
  70. Reline::Core#line_editor
  71. Reline::Core#output
  72. Reline::Core::new
  73. Reline::Core#add_dialog_proc
  74. Reline::Core#ambiguous_width
  75. Reline::Core#auto_indent_proc=
  76. Reline::Core#autocompletion
  77. Reline::Core#autocompletion=
  78. Reline::Core#basic_quote_characters=
  79. Reline::Core#basic_word_break_characters=
  80. Reline::Core#completer_quote_characters=
  81. Reline::Core#completer_word_break_characters=
  82. Reline::Core#completion_append_character=
  83. Reline::Core#completion_case_fold
  84. Reline::Core#completion_case_fold=
  85. Reline::Core#completion_proc=
  86. Reline::Core#completion_quote_character
  87. Reline::Core#dialog_proc
  88. Reline::Core#dig_perfect_match_proc=
  89. Reline::Core#emacs_editing_mode
  90. Reline::Core#emacs_editing_mode?
  91. Reline::Core#encoding
  92. Reline::Core#filename_quote_characters=
  93. Reline::Core#get_screen_size
  94. Reline::Core#inner_readline
  95. Reline::Core#input=
  96. Reline::Core#may_req_ambiguous_char_width
  97. Reline::Core#output=
  98. Reline::Core#output_modifier_proc=
  99. Reline::Core#pre_input_hook=
  100. Reline::Core#prompt_proc=
  101. Reline::Core#read_2nd_character_of_key_sequence
  102. Reline::Core#read_escaped_key
  103. Reline::Core#read_io
  104. Reline::Core#readline
  105. Reline::Core#readmultiline
  106. Reline::Core#special_prefixes=
  107. Reline::Core#vi_editing_mode
  108. Reline::Core#vi_editing_mode?
  109. Reline::GeneralIO
  110. Reline::GeneralIO::clear_screen
  111. Reline::GeneralIO::cursor_pos
  112. Reline::GeneralIO::deprep
  113. Reline::GeneralIO::encoding
  114. Reline::GeneralIO::erase_after_cursor
  115. Reline::GeneralIO::finish_pasting
  116. Reline::GeneralIO::get_screen_size
  117. Reline::GeneralIO::getc
  118. Reline::GeneralIO::in_pasting?
  119. Reline::GeneralIO::input=
  120. Reline::GeneralIO::move_cursor_column
  121. Reline::GeneralIO::move_cursor_down
  122. Reline::GeneralIO::move_cursor_up
  123. Reline::GeneralIO::prep
  124. Reline::GeneralIO::reset
  125. Reline::GeneralIO::scroll_down
  126. Reline::GeneralIO::set_default_key_bindings
  127. Reline::GeneralIO::set_screen_size
  128. Reline::GeneralIO::set_winch_handler
  129. Reline::GeneralIO::start_pasting
  130. Reline::GeneralIO::ungetc
  131. Reline::GeneralIO::win?
  132. Reline::KeyActor::Base
  133. Reline::KeyActor::Base::new
  134. Reline::KeyActor::Base#default_key_bindings
  135. Reline::KeyActor::Base#get_method
  136. Reline::KeyActor::Base#reset_default_key_bindings
  137. Reline::KeyActor::Emacs
  138. Reline::KeyActor::ViCommand
  139. Reline::KeyActor::ViInsert
  140. Reline::KeyStroke
  141. Reline::KeyStroke::new
  142. Reline::KeyStroke#compress_meta_key
  143. Reline::KeyStroke#equal?
  144. Reline::KeyStroke#expand
  145. Reline::KeyStroke#key_mapping
  146. Reline::KeyStroke#match_status
  147. Reline::KeyStroke#start_with?
  148. Reline::KillRing
  149. Reline::KillRing::new
  150. Reline::KillRing#append
  151. Reline::KillRing#each
  152. Reline::KillRing#process
  153. Reline::KillRing#yank
  154. Reline::KillRing#yank_pop
  155. Reline::KillRing::RingBuffer
  156. Reline::KillRing::RingBuffer#head
  157. Reline::KillRing::RingBuffer#size
  158. Reline::KillRing::RingBuffer::new
  159. Reline::KillRing::RingBuffer#<<
  160. Reline::KillRing::RingBuffer#empty?
  161. Reline::KillRing::State
  162. Reline::LineEditor
  163. Reline::LineEditor#auto_indent_proc
  164. Reline::LineEditor#byte_pointer
  165. Reline::LineEditor#completion_append_character
  166. Reline::LineEditor#completion_proc
  167. Reline::LineEditor#confirm_multiline_termination_proc
  168. Reline::LineEditor#dig_perfect_match_proc
  169. Reline::LineEditor#line
  170. Reline::LineEditor#output
  171. Reline::LineEditor#output_modifier_proc
  172. Reline::LineEditor#pre_input_hook
  173. Reline::LineEditor#prompt_proc
  174. Reline::LineEditor::new
  175. Reline::LineEditor#add_dialog_proc
  176. Reline::LineEditor#argumentable?
  177. Reline::LineEditor#backward_char
  178. Reline::LineEditor#backward_delete_char
  179. Reline::LineEditor#backward_word
  180. Reline::LineEditor#beginning_of_line
  181. Reline::LineEditor#byte_pointer=
  182. Reline::LineEditor#byteinsert
  183. Reline::LineEditor#byteslice!
  184. Reline::LineEditor#calculate_height_by_lines
  185. Reline::LineEditor#calculate_height_by_width
  186. Reline::LineEditor#calculate_nearest_cursor
  187. Reline::LineEditor#calculate_scroll_partial_screen
  188. Reline::LineEditor#calculate_width
  189. Reline::LineEditor#call_completion_proc
  190. Reline::LineEditor#call_completion_proc_with_checking_args
  191. Reline::LineEditor#capitalize_word
  192. Reline::LineEditor#check_mode_string
  193. Reline::LineEditor#check_multiline_prompt
  194. Reline::LineEditor#clear_dialog
  195. Reline::LineEditor#clear_each_dialog
  196. Reline::LineEditor#clear_screen
  197. Reline::LineEditor#clear_screen_buffer
  198. Reline::LineEditor#complete
  199. Reline::LineEditor#complete_internal_proc
  200. Reline::LineEditor#confirm_multiline_termination
  201. Reline::LineEditor#copy_for_vi
  202. Reline::LineEditor#delete_char
  203. Reline::LineEditor#delete_char_or_list
  204. Reline::LineEditor#delete_text
  205. Reline::LineEditor#downcase_word
  206. Reline::LineEditor#ed_argument_digit
  207. Reline::LineEditor#ed_clear_screen
  208. Reline::LineEditor#ed_delete_next_char
  209. Reline::LineEditor#ed_delete_prev_char
  210. Reline::LineEditor#ed_delete_prev_word
  211. Reline::LineEditor#ed_digit
  212. Reline::LineEditor#ed_insert
  213. Reline::LineEditor#ed_kill_line
  214. Reline::LineEditor#ed_move_to_beg
  215. Reline::LineEditor#ed_move_to_end
  216. Reline::LineEditor#ed_newline
  217. Reline::LineEditor#ed_next_char
  218. Reline::LineEditor#ed_next_history
  219. Reline::LineEditor#ed_prev_char
  220. Reline::LineEditor#ed_prev_history
  221. Reline::LineEditor#ed_prev_word
  222. Reline::LineEditor#ed_quoted_insert
  223. Reline::LineEditor#ed_search_next_history
  224. Reline::LineEditor#ed_search_prev_history
  225. Reline::LineEditor#ed_transpose_chars
  226. Reline::LineEditor#ed_transpose_words
  227. Reline::LineEditor#ed_unassigned
  228. Reline::LineEditor#editing_mode
  229. Reline::LineEditor#em_capitol_case
  230. Reline::LineEditor#em_delete
  231. Reline::LineEditor#em_delete_next_word
  232. Reline::LineEditor#em_delete_or_list
  233. Reline::LineEditor#em_delete_prev_char
  234. Reline::LineEditor#em_exchange_mark
  235. Reline::LineEditor#em_kill_line
  236. Reline::LineEditor#em_kill_region
  237. Reline::LineEditor#em_lower_case
  238. Reline::LineEditor#em_next_word
  239. Reline::LineEditor#em_set_mark
  240. Reline::LineEditor#em_upper_case
  241. Reline::LineEditor#em_yank
  242. Reline::LineEditor#em_yank_pop
  243. Reline::LineEditor#end_of_line
  244. Reline::LineEditor#eof?
  245. Reline::LineEditor#exchange_point_and_mark
  246. Reline::LineEditor#finalize
  247. Reline::LineEditor#finish
  248. Reline::LineEditor#finished?
  249. Reline::LineEditor#forward_char
  250. Reline::LineEditor#forward_search_history
  251. Reline::LineEditor#forward_word
  252. Reline::LineEditor#generate_searcher
  253. Reline::LineEditor#history_search_backward
  254. Reline::LineEditor#history_search_forward
  255. Reline::LineEditor#inclusive?
  256. Reline::LineEditor#incremental_search_history
  257. Reline::LineEditor#input_key
  258. Reline::LineEditor#insert_new_line
  259. Reline::LineEditor#insert_text
  260. Reline::LineEditor#just_move_cursor
  261. Reline::LineEditor#key_delete
  262. Reline::LineEditor#key_newline
  263. Reline::LineEditor#kill_line
  264. Reline::LineEditor#kill_whole_line
  265. Reline::LineEditor#menu
  266. Reline::LineEditor#modify_lines
  267. Reline::LineEditor#move_completed_list
  268. Reline::LineEditor#move_cursor_down
  269. Reline::LineEditor#move_cursor_up
  270. Reline::LineEditor#multiline_off
  271. Reline::LineEditor#multiline_on
  272. Reline::LineEditor#next_history
  273. Reline::LineEditor#normal_char
  274. Reline::LineEditor#padding_space_with_escape_sequences
  275. Reline::LineEditor#previous_history
  276. Reline::LineEditor#process_auto_indent
  277. Reline::LineEditor#process_insert
  278. Reline::LineEditor#process_key
  279. Reline::LineEditor#quoted_insert
  280. Reline::LineEditor#render_dialog
  281. Reline::LineEditor#render_each_dialog
  282. Reline::LineEditor#render_partial
  283. Reline::LineEditor#render_whole_lines
  284. Reline::LineEditor#rerender
  285. Reline::LineEditor#rerender_added_newline
  286. Reline::LineEditor#rerender_all
  287. Reline::LineEditor#rerender_all_lines
  288. Reline::LineEditor#rerender_changed_current_line
  289. Reline::LineEditor#reset
  290. Reline::LineEditor#reset_dialog
  291. Reline::LineEditor#reset_line
  292. Reline::LineEditor#reset_variables
  293. Reline::LineEditor#resize
  294. Reline::LineEditor#retrieve_completion_block
  295. Reline::LineEditor#reverse_search_history
  296. Reline::LineEditor#run_for_operators
  297. Reline::LineEditor#scroll_down
  298. Reline::LineEditor#search_next_char
  299. Reline::LineEditor#search_prev_char
  300. Reline::LineEditor#self_insert
  301. Reline::LineEditor#set_mark
  302. Reline::LineEditor#set_pasting_state
  303. Reline::LineEditor#set_signal_handlers
  304. Reline::LineEditor#show_menu
  305. Reline::LineEditor#simplified_rendering?
  306. Reline::LineEditor#split_by_width
  307. Reline::LineEditor#transpose_chars
  308. Reline::LineEditor#transpose_words
  309. Reline::LineEditor#unix_line_discard
  310. Reline::LineEditor#unix_word_rubout
  311. Reline::LineEditor#upcase_word
  312. Reline::LineEditor#vi_add
  313. Reline::LineEditor#vi_add_at_eol
  314. Reline::LineEditor#vi_change_meta
  315. Reline::LineEditor#vi_command_mode
  316. Reline::LineEditor#vi_delete_meta
  317. Reline::LineEditor#vi_delete_prev_char
  318. Reline::LineEditor#vi_end_big_word
  319. Reline::LineEditor#vi_end_of_transmission
  320. Reline::LineEditor#vi_end_word
  321. Reline::LineEditor#vi_eof_maybe
  322. Reline::LineEditor#vi_first_print
  323. Reline::LineEditor#vi_histedit
  324. Reline::LineEditor#vi_insert
  325. Reline::LineEditor#vi_insert_at_bol
  326. Reline::LineEditor#vi_join_lines
  327. Reline::LineEditor#vi_kill_line_prev
  328. Reline::LineEditor#vi_list_or_eof
  329. Reline::LineEditor#vi_movement_mode
  330. Reline::LineEditor#vi_next_big_word
  331. Reline::LineEditor#vi_next_char
  332. Reline::LineEditor#vi_next_word
  333. Reline::LineEditor#vi_paste_next
  334. Reline::LineEditor#vi_paste_prev
  335. Reline::LineEditor#vi_prev_big_word
  336. Reline::LineEditor#vi_prev_char
  337. Reline::LineEditor#vi_prev_word
  338. Reline::LineEditor#vi_replace_char
  339. Reline::LineEditor#vi_search_next
  340. Reline::LineEditor#vi_search_prev
  341. Reline::LineEditor#vi_to_column
  342. Reline::LineEditor#vi_to_history_line
  343. Reline::LineEditor#vi_to_next_char
  344. Reline::LineEditor#vi_to_prev_char
  345. Reline::LineEditor#vi_yank
  346. Reline::LineEditor#vi_zero
  347. Reline::LineEditor#whole_buffer
  348. Reline::LineEditor#whole_lines
  349. Reline::LineEditor#wrap_method_call
  350. Reline::LineEditor#yank
  351. Reline::LineEditor#yank_pop
  352. Reline::LineEditor::CompletionState
  353. Reline::LineEditor::Dialog
  354. Reline::LineEditor::Dialog#column
  355. Reline::LineEditor::Dialog#contents
  356. Reline::LineEditor::Dialog#lines_backup
  357. Reline::LineEditor::Dialog#name
  358. Reline::LineEditor::Dialog#pointer
  359. Reline::LineEditor::Dialog#scroll_top
  360. Reline::LineEditor::Dialog#scrollbar_pos
  361. Reline::LineEditor::Dialog#trap_key
  362. Reline::LineEditor::Dialog#vertical_offset
  363. Reline::LineEditor::Dialog#width
  364. Reline::LineEditor::Dialog::new
  365. Reline::LineEditor::Dialog#call
  366. Reline::LineEditor::Dialog#contents=
  367. Reline::LineEditor::Dialog#set_cursor_pos
  368. Reline::LineEditor::Dialog#width=
  369. Reline::LineEditor::DialogProcScope
  370. Reline::LineEditor::DialogProcScope::new
  371. Reline::LineEditor::DialogProcScope#call
  372. Reline::LineEditor::DialogProcScope#call_completion_proc_with_checking_args
  373. Reline::LineEditor::DialogProcScope#completion_journey_data
  374. Reline::LineEditor::DialogProcScope#config
  375. Reline::LineEditor::DialogProcScope#context
  376. Reline::LineEditor::DialogProcScope#cursor_pos
  377. Reline::LineEditor::DialogProcScope#dialog
  378. Reline::LineEditor::DialogProcScope#just_cursor_moving
  379. Reline::LineEditor::DialogProcScope#key
  380. Reline::LineEditor::DialogProcScope#retrieve_completion_block
  381. Reline::LineEditor::DialogProcScope#screen_width
  382. Reline::LineEditor::DialogProcScope#set_cursor_pos
  383. Reline::LineEditor::DialogProcScope#set_dialog
  384. Reline::LineEditor::DialogProcScope#set_key
  385. Reline::Terminfo
  386. Reline::Terminfo::curses_dl
  387. Reline::Terminfo::curses_dl_files
  388. Reline::Terminfo::enabled?
  389. Reline::Terminfo::setupterm
  390. Reline::Terminfo::tigetstr
  391. Reline::Terminfo::tiparm
  392. Reline::Terminfo::StringWithTiparm
  393. Reline::Terminfo::StringWithTiparm#tiparm
  394. Reline::Unicode
  395. Reline::Unicode::calculate_width
  396. Reline::Unicode::ed_transpose_words
  397. Reline::Unicode::em_backward_word
  398. Reline::Unicode::em_big_backward_word
  399. Reline::Unicode::em_forward_word
  400. Reline::Unicode::em_forward_word_with_capitalization
  401. Reline::Unicode::escape_for_print
  402. Reline::Unicode::get_mbchar_byte_size_by_first_char
  403. Reline::Unicode::get_mbchar_width
  404. Reline::Unicode::get_next_mbchar_size
  405. Reline::Unicode::get_prev_mbchar_size
  406. Reline::Unicode::split_by_width
  407. Reline::Unicode::take_range
  408. Reline::Unicode::vi_backward_word
  409. Reline::Unicode::vi_big_backward_word
  410. Reline::Unicode::vi_big_forward_end_word
  411. Reline::Unicode::vi_big_forward_word
  412. Reline::Unicode::vi_first_print
  413. Reline::Unicode::vi_forward_end_word
  414. Reline::Unicode::vi_forward_word
  415. Reline::Unicode::EastAsianWidth
  416. Reline::Windows
  417. Reline::Windows::check_input_event
  418. Reline::Windows::clear_screen
  419. Reline::Windows::cursor_pos
  420. Reline::Windows::deprep
  421. Reline::Windows::empty_buffer?
  422. Reline::Windows::encoding
  423. Reline::Windows::erase_after_cursor
  424. Reline::Windows::get_console_screen_buffer_info
  425. Reline::Windows::get_screen_size
  426. Reline::Windows::getc
  427. Reline::Windows::getconsolemode
  428. Reline::Windows::hide_cursor
  429. Reline::Windows::in_pasting?
  430. Reline::Windows::move_cursor_column
  431. Reline::Windows::move_cursor_down
  432. Reline::Windows::move_cursor_up
  433. Reline::Windows::msys_tty?
  434. Reline::Windows::prep
  435. Reline::Windows::process_key_event
  436. Reline::Windows::scroll_down
  437. Reline::Windows::set_default_key_bindings
  438. Reline::Windows::set_screen_size
  439. Reline::Windows::set_winch_handler
  440. Reline::Windows::setconsolemode
  441. Reline::Windows::show_cursor
  442. Reline::Windows::ungetc
  443. Reline::Windows::win?
  444. Reline::Windows::win_legacy_console?
  445. Reline::Windows::KeyEventRecord
  446. Reline::Windows::KeyEventRecord#char_code
  447. Reline::Windows::KeyEventRecord#control_key_state
  448. Reline::Windows::KeyEventRecord#control_keys
  449. Reline::Windows::KeyEventRecord#virtual_key_code
  450. Reline::Windows::KeyEventRecord::new
  451. Reline::Windows::KeyEventRecord#char
  452. Reline::Windows::KeyEventRecord#enhanced?
  453. Reline::Windows::KeyEventRecord#matches?

Resolv

  1. Resolv
  2. Resolv::get_dns_server_list
  3. Resolv::get_hosts_dir
  4. Resolv::get_hosts_path
  5. Resolv::get_info
  6. Resolv::get_resolv_info
  7. Resolv::DNS
  8. Resolv::DNS::new
  9. Resolv::DNS::open
  10. Resolv::DNS#close
  11. Resolv::DNS#each_address
  12. Resolv::DNS#each_name
  13. Resolv::DNS#each_resource
  14. Resolv::DNS#fetch_resource
  15. Resolv::DNS#getaddress
  16. Resolv::DNS#getaddresses
  17. Resolv::DNS#getname
  18. Resolv::DNS#getnames
  19. Resolv::DNS#getresource
  20. Resolv::DNS#getresources
  21. Resolv::DNS#timeouts=
  22. Resolv::DNS::Config::NXDomain
  23. Resolv::DNS::Config::OtherResolvError
  24. Resolv::DNS::DecodeError
  25. Resolv::DNS::EncodeError
  26. Resolv::DNS::Name
  27. Resolv::DNS::Name::create
  28. Resolv::DNS::Name#absolute?
  29. Resolv::DNS::Name#subdomain_of?
  30. Resolv::DNS::Name#to_s
  31. Resolv::DNS::Query
  32. Resolv::DNS::Requester::RequestError
  33. Resolv::DNS::Resource
  34. Resolv::DNS::Resource#ttl
  35. Resolv::DNS::Resource::ANY
  36. Resolv::DNS::Resource::CNAME
  37. Resolv::DNS::Resource::DomainName
  38. Resolv::DNS::Resource::DomainName#name
  39. Resolv::DNS::Resource::DomainName::new
  40. Resolv::DNS::Resource::Generic
  41. Resolv::DNS::Resource::Generic#data
  42. Resolv::DNS::Resource::Generic::new
  43. Resolv::DNS::Resource::HINFO
  44. Resolv::DNS::Resource::HINFO#cpu
  45. Resolv::DNS::Resource::HINFO#os
  46. Resolv::DNS::Resource::HINFO::new
  47. Resolv::DNS::Resource::IN
  48. Resolv::DNS::Resource::IN::A
  49. Resolv::DNS::Resource::IN::A#address
  50. Resolv::DNS::Resource::IN::A::new
  51. Resolv::DNS::Resource::IN::AAAA
  52. Resolv::DNS::Resource::IN::AAAA#address
  53. Resolv::DNS::Resource::IN::AAAA::new
  54. Resolv::DNS::Resource::IN::SRV
  55. Resolv::DNS::Resource::IN::SRV#port
  56. Resolv::DNS::Resource::IN::SRV#priority
  57. Resolv::DNS::Resource::IN::SRV#target
  58. Resolv::DNS::Resource::IN::SRV#weight
  59. Resolv::DNS::Resource::IN::SRV::new
  60. Resolv::DNS::Resource::IN::WKS
  61. Resolv::DNS::Resource::IN::WKS#address
  62. Resolv::DNS::Resource::IN::WKS#bitmap
  63. Resolv::DNS::Resource::IN::WKS#protocol
  64. Resolv::DNS::Resource::IN::WKS::new
  65. Resolv::DNS::Resource::LOC
  66. Resolv::DNS::Resource::LOC#altitude
  67. Resolv::DNS::Resource::LOC#hprecision
  68. Resolv::DNS::Resource::LOC#latitude
  69. Resolv::DNS::Resource::LOC#longitude
  70. Resolv::DNS::Resource::LOC#ssize
  71. Resolv::DNS::Resource::LOC#vprecision
  72. Resolv::DNS::Resource::LOC::new
  73. Resolv::DNS::Resource::MINFO
  74. Resolv::DNS::Resource::MINFO#emailbx
  75. Resolv::DNS::Resource::MINFO#rmailbx
  76. Resolv::DNS::Resource::MINFO::new
  77. Resolv::DNS::Resource::MX
  78. Resolv::DNS::Resource::MX#exchange
  79. Resolv::DNS::Resource::MX#preference
  80. Resolv::DNS::Resource::MX::new
  81. Resolv::DNS::Resource::NS
  82. Resolv::DNS::Resource::PTR
  83. Resolv::DNS::Resource::SOA
  84. Resolv::DNS::Resource::SOA#expire
  85. Resolv::DNS::Resource::SOA#minimum
  86. Resolv::DNS::Resource::SOA#mname
  87. Resolv::DNS::Resource::SOA#refresh
  88. Resolv::DNS::Resource::SOA#retry
  89. Resolv::DNS::Resource::SOA#rname
  90. Resolv::DNS::Resource::SOA#serial
  91. Resolv::DNS::Resource::SOA::new
  92. Resolv::DNS::Resource::TXT
  93. Resolv::DNS::Resource::TXT#strings
  94. Resolv::DNS::Resource::TXT::new
  95. Resolv::DNS::Resource::TXT#data
  96. Resolv::Hosts
  97. Resolv::Hosts::new
  98. Resolv::Hosts#each_address
  99. Resolv::Hosts#each_name
  100. Resolv::Hosts#getaddress
  101. Resolv::Hosts#getaddresses
  102. Resolv::Hosts#getname
  103. Resolv::Hosts#getnames
  104. Resolv::IPv4
  105. Resolv::IPv4#address
  106. Resolv::IPv4::create
  107. Resolv::IPv4#to_name
  108. Resolv::IPv6
  109. Resolv::IPv6#address
  110. Resolv::IPv6::create
  111. Resolv::IPv6#to_name
  112. Resolv::LOC::Alt
  113. Resolv::LOC::Alt#altitude
  114. Resolv::LOC::Alt::create
  115. Resolv::LOC::Alt::new
  116. Resolv::LOC::Coord
  117. Resolv::LOC::Coord#coordinates
  118. Resolv::LOC::Coord#orientation
  119. Resolv::LOC::Coord::create
  120. Resolv::LOC::Coord::new
  121. Resolv::LOC::Size
  122. Resolv::LOC::Size#scalar
  123. Resolv::LOC::Size::create
  124. Resolv::LOC::Size::new
  125. Resolv::MDNS
  126. Resolv::MDNS::new
  127. Resolv::MDNS#each_address
  128. Resolv::ResolvError
  129. Resolv::ResolvTimeout
  130. Resolv::SZ
  131. Resolv::SZ#read_s

Ripper

  1. Ripper
  2. Ripper::dedent_string
  3. Ripper::lex
  4. Ripper::lex_state_name
  5. Ripper::new
  6. Ripper::parse
  7. Ripper::sexp
  8. Ripper::sexp_raw
  9. Ripper::slice
  10. Ripper::tokenize
  11. Ripper#column
  12. Ripper#compile_error
  13. Ripper#debug_output
  14. Ripper#debug_output=
  15. Ripper#dedent_string
  16. Ripper#encoding
  17. Ripper#end_seen?
  18. Ripper#error?
  19. Ripper#filename
  20. Ripper#lineno
  21. Ripper#parse
  22. Ripper#state
  23. Ripper#token
  24. Ripper#warn
  25. Ripper#warning
  26. Ripper#yydebug
  27. Ripper#yydebug=
  28. Ripper::Filter
  29. Ripper::Filter::new
  30. Ripper::Filter#column
  31. Ripper::Filter#filename
  32. Ripper::Filter#lineno
  33. Ripper::Filter#on_default
  34. Ripper::Filter#parse
  35. Ripper::Filter#state
  36. Ripper::Lexer::Elem
  37. Ripper::Lexer::Elem#event
  38. Ripper::Lexer::Elem#message
  39. Ripper::Lexer::Elem#pos
  40. Ripper::Lexer::Elem#state
  41. Ripper::Lexer::Elem#tok
  42. Ripper::Lexer::Elem::new
  43. Ripper::Lexer::Elem#[]
  44. Ripper::Lexer::Elem#inspect
  45. Ripper::Lexer::Elem#pretty_print
  46. Ripper::Lexer::Elem#to_a
  47. Ripper::Lexer::Elem#to_s
  48. Ripper::Lexer::State
  49. Ripper::Lexer::State#inspect
  50. Ripper::Lexer::State#to_i
  51. Ripper::Lexer::State#to_int
  52. Ripper::Lexer::State#to_s
  53. Ripper::Lexer::State::new
  54. Ripper::Lexer::State#&
  55. Ripper::Lexer::State#==
  56. Ripper::Lexer::State#[]
  57. Ripper::Lexer::State#|
  58. Ripper::Lexer::State#allbits?
  59. Ripper::Lexer::State#anybits?
  60. Ripper::Lexer::State#nobits?
  61. Ripper::Lexer::State#pretty_print

RubyVM

  1. RubyVM
  2. RubyVM::each_builtin
  3. RubyVM::keep_script_lines
  4. RubyVM::keep_script_lines=
  5. RubyVM::mtbl
  6. RubyVM::mtbl2
  7. RubyVM::stat
  8. RubyVM::AbstractSyntaxTree
  9. RubyVM::AbstractSyntaxTree::of
  10. RubyVM::AbstractSyntaxTree::parse
  11. RubyVM::AbstractSyntaxTree::parse_file
  12. RubyVM::AbstractSyntaxTree::Node
  13. RubyVM::AbstractSyntaxTree::Node#children
  14. RubyVM::AbstractSyntaxTree::Node#first_column
  15. RubyVM::AbstractSyntaxTree::Node#first_lineno
  16. RubyVM::AbstractSyntaxTree::Node#inspect
  17. RubyVM::AbstractSyntaxTree::Node#last_column
  18. RubyVM::AbstractSyntaxTree::Node#last_lineno
  19. RubyVM::AbstractSyntaxTree::Node#node_id
  20. RubyVM::AbstractSyntaxTree::Node#pretty_print
  21. RubyVM::AbstractSyntaxTree::Node#pretty_print_children
  22. RubyVM::AbstractSyntaxTree::Node#script_lines
  23. RubyVM::AbstractSyntaxTree::Node#source
  24. RubyVM::AbstractSyntaxTree::Node#type
  25. RubyVM::InstructionSequence
  26. RubyVM::InstructionSequence::compile
  27. RubyVM::InstructionSequence::compile_file
  28. RubyVM::InstructionSequence::compile_option
  29. RubyVM::InstructionSequence::compile_option=
  30. RubyVM::InstructionSequence::disasm
  31. RubyVM::InstructionSequence::disassemble
  32. RubyVM::InstructionSequence::load_from_binary
  33. RubyVM::InstructionSequence::load_from_binary_extra_data
  34. RubyVM::InstructionSequence::new
  35. RubyVM::InstructionSequence::of
  36. RubyVM::InstructionSequence#absolute_path
  37. RubyVM::InstructionSequence#base_label
  38. RubyVM::InstructionSequence#disasm
  39. RubyVM::InstructionSequence#disassemble
  40. RubyVM::InstructionSequence#each_child
  41. RubyVM::InstructionSequence#eval
  42. RubyVM::InstructionSequence#first_lineno
  43. RubyVM::InstructionSequence#inspect
  44. RubyVM::InstructionSequence#label
  45. RubyVM::InstructionSequence#path
  46. RubyVM::InstructionSequence#script_lines
  47. RubyVM::InstructionSequence#to_a
  48. RubyVM::InstructionSequence#to_binary
  49. RubyVM::InstructionSequence#trace_points
  50. RubyVM::MJIT
  51. RubyVM::MJIT::enabled?
  52. RubyVM::MJIT::resume
  53. RubyVM::YJIT
  54. RubyVM::YJIT::blocks_for
  55. RubyVM::YJIT::Block
  56. RubyVM::YJIT::Block#address
  57. RubyVM::YJIT::Block#code
  58. RubyVM::YJIT::Block#id
  59. RubyVM::YJIT::Block#iseq_end_index
  60. RubyVM::YJIT::Block#iseq_start_index
  61. RubyVM::YJIT::Block#outgoing_ids
  62. RubyVM::YJIT::Disasm
  63. RubyVM::YJIT::Disasm#disasm

SecureRandom

  1. SecureRandom
  2. SecureRandom::bytes
  3. SecureRandom::gen_random
  4. SecureRandom::gen_random_openssl
  5. SecureRandom::gen_random_urandom

Set

  1. Set
  2. Set::[]
  3. Set::json_create
  4. Set::new
  5. Set#&
  6. Set#+
  7. Set#-
  8. Set#<
  9. Set#<<
  10. Set#<=
  11. Set#<=>
  12. Set#==
  13. Set#===
  14. Set#>
  15. Set#>=
  16. Set#^
  17. Set#|
  18. Set#add
  19. Set#add?
  20. Set#as_json
  21. Set#classify
  22. Set#clear
  23. Set#collect!
  24. Set#compare_by_identity
  25. Set#compare_by_identity?
  26. Set#delete
  27. Set#delete?
  28. Set#delete_if
  29. Set#difference
  30. Set#disjoint?
  31. Set#divide
  32. Set#each
  33. Set#empty?
  34. Set#filter!
  35. Set#flatten
  36. Set#flatten!
  37. Set#include?
  38. Set#initialize_clone
  39. Set#initialize_dup
  40. Set#inspect
  41. Set#intersect?
  42. Set#intersection
  43. Set#join
  44. Set#keep_if
  45. Set#length
  46. Set#map!
  47. Set#member?
  48. Set#merge
  49. Set#proper_subset?
  50. Set#proper_superset?
  51. Set#reject!
  52. Set#replace
  53. Set#reset
  54. Set#select!
  55. Set#size
  56. Set#subset?
  57. Set#subtract
  58. Set#superset?
  59. Set#to_a
  60. Set#to_json
  61. Set#to_s
  62. Set#to_set
  63. Set#union

Shell

  1. Shellwords
  2. Shellwords::escape
  3. Shellwords::join
  4. Shellwords::shellescape
  5. Shellwords::shelljoin
  6. Shellwords::shellsplit
  7. Shellwords::shellwords
  8. Shellwords::split
  9. Shellwords#shellescape
  10. Shellwords#shelljoin
  11. Shellwords#shellsplit
  12. Shellwords#shellwords

Singleton

  1. Singleton
  2. Singleton::append_features
  3. Singleton::included
  4. Singleton::instance
  5. Singleton#clone
  6. Singleton#dup

String

  1. String
  2. String::new
  3. String::try_convert
  4. String#%
  5. String#*
  6. String#+
  7. String#+@
  8. String#-@
  9. String#<<
  10. String#<=>
  11. String#==
  12. String#===
  13. String#=~
  14. String#[]
  15. String#[]=
  16. String#ascii_only?
  17. String#b
  18. String#bytes
  19. String#bytesize
  20. String#byteslice
  21. String#capitalize
  22. String#capitalize!
  23. String#casecmp
  24. String#casecmp?
  25. String#center
  26. String#chars
  27. String#chomp
  28. String#chomp!
  29. String#chop
  30. String#chop!
  31. String#chr
  32. String#clear
  33. String#codepoints
  34. String#concat
  35. String#count
  36. String#crypt
  37. String#delete
  38. String#delete!
  39. String#delete_prefix
  40. String#delete_prefix!
  41. String#delete_suffix
  42. String#delete_suffix!
  43. String#downcase
  44. String#downcase!
  45. String#dump
  46. String#each_byte
  47. String#each_char
  48. String#each_codepoint
  49. String#each_grapheme_cluster
  50. String#each_line
  51. String#empty?
  52. String#encode
  53. String#encode!
  54. String#encoding
  55. String#end_with?
  56. String#eql?
  57. String#force_encoding
  58. String#freeze
  59. String#getbyte
  60. String#grapheme_clusters
  61. String#gsub
  62. String#gsub!
  63. String#hash
  64. String#hex
  65. String#include?
  66. String#index
  67. String#initialize_copy
  68. String#insert
  69. String#inspect
  70. String#intern
  71. String#iseuc
  72. String#isjis
  73. String#issjis
  74. String#isutf8
  75. String#kconv
  76. String#length
  77. String#lines
  78. String#ljust
  79. String#lstrip
  80. String#lstrip!
  81. String#match
  82. String#match?
  83. String#next
  84. String#next!
  85. String#oct
  86. String#ord
  87. String#partition
  88. String#prepend
  89. String#replace
  90. String#reverse
  91. String#reverse!
  92. String#rindex
  93. String#rjust
  94. String#rpartition
  95. String#rstrip
  96. String#rstrip!
  97. String#scan
  98. String#scrub
  99. String#scrub!
  100. String#setbyte
  101. String#shellescape
  102. String#shellsplit
  103. String#size
  104. String#slice
  105. String#slice!
  106. String#split
  107. String#squeeze
  108. String#squeeze!
  109. String#start_with?
  110. String#strip
  111. String#strip!
  112. String#sub
  113. String#sub!
  114. String#succ
  115. String#succ!
  116. String#sum
  117. String#swapcase
  118. String#swapcase!
  119. String#to_c
  120. String#to_d
  121. String#to_f
  122. String#to_i
  123. String#to_r
  124. String#to_s
  125. String#to_str
  126. String#to_sym
  127. String#toeuc
  128. String#tojis
  129. String#tolocale
  130. String#tosjis
  131. String#toutf16
  132. String#toutf32
  133. String#toutf8
  134. String#tr
  135. String#tr!
  136. String#tr_s
  137. String#tr_s!
  138. String#undump
  139. String#unicode_normalize
  140. String#unicode_normalize!
  141. String#unicode_normalized?
  142. String#unpack
  143. String#unpack1
  144. String#upcase
  145. String#upcase!
  146. String#upto
  147. String#valid_encoding?

StringIO

  1. StringIO
  2. StringIO::new
  3. StringIO::open
  4. StringIO#binmode
  5. StringIO#close
  6. StringIO#close_read
  7. StringIO#close_write
  8. StringIO#closed?
  9. StringIO#closed_read?
  10. StringIO#closed_write?
  11. StringIO#each
  12. StringIO#each_byte
  13. StringIO#each_char
  14. StringIO#each_codepoint
  15. StringIO#each_line
  16. StringIO#eof
  17. StringIO#eof?
  18. StringIO#external_encoding
  19. StringIO#fcntl
  20. StringIO#fileno
  21. StringIO#flush
  22. StringIO#fsync
  23. StringIO#getbyte
  24. StringIO#getc
  25. StringIO#gets
  26. StringIO#internal_encoding
  27. StringIO#isatty
  28. StringIO#length
  29. StringIO#lineno
  30. StringIO#lineno=
  31. StringIO#pid
  32. StringIO#pos
  33. StringIO#pos=
  34. StringIO#putc
  35. StringIO#read
  36. StringIO#readlines
  37. StringIO#reopen
  38. StringIO#rewind
  39. StringIO#seek
  40. StringIO#set_encoding
  41. StringIO#set_encoding_by_bom
  42. StringIO#size
  43. StringIO#string
  44. StringIO#string=
  45. StringIO#sync
  46. StringIO#sync=
  47. StringIO#tell
  48. StringIO#truncate
  49. StringIO#tty?
  50. StringIO#ungetbyte
  51. StringIO#ungetc
  52. StringIO#write

StringScanner

  1. StringScanner
  2. StringScanner::must_C_version
  3. StringScanner::new
  4. StringScanner#<<
  5. StringScanner#[]
  6. StringScanner#beginning_of_line?
  7. StringScanner#captures
  8. StringScanner#charpos
  9. StringScanner#check
  10. StringScanner#check_until
  11. StringScanner#clear
  12. StringScanner#concat
  13. StringScanner#empty?
  14. StringScanner#eos?
  15. StringScanner#exist?
  16. StringScanner#fixed_anchor?
  17. StringScanner#get_byte
  18. StringScanner#getbyte
  19. StringScanner#getch
  20. StringScanner#initialize_copy
  21. StringScanner#inspect
  22. StringScanner#match?
  23. StringScanner#matched
  24. StringScanner#matched?
  25. StringScanner#matched_size
  26. StringScanner#peek
  27. StringScanner#peep
  28. StringScanner#pointer
  29. StringScanner#pointer=
  30. StringScanner#pos
  31. StringScanner#pos=
  32. StringScanner#post_match
  33. StringScanner#pre_match
  34. StringScanner#reset
  35. StringScanner#rest
  36. StringScanner#rest?
  37. StringScanner#rest_size
  38. StringScanner#restsize
  39. StringScanner#scan
  40. StringScanner#scan_full
  41. StringScanner#scan_until
  42. StringScanner#search_full
  43. StringScanner#size
  44. StringScanner#skip
  45. StringScanner#skip_until
  46. StringScanner#string
  47. StringScanner#string=
  48. StringScanner#terminate
  49. StringScanner#unscan
  50. StringScanner#values_at

Struct

  1. Struct
  2. Struct::json_create
  3. Struct::keyword_init?
  4. Struct::members
  5. Struct::new
  6. Struct#==
  7. Struct#[]
  8. Struct#[]=
  9. Struct#as_json
  10. Struct#deconstruct
  11. Struct#deconstruct_keys
  12. Struct#dig
  13. Struct#each
  14. Struct#each_pair
  15. Struct#eql?
  16. Struct#filter
  17. Struct#hash
  18. Struct#inspect
  19. Struct#length
  20. Struct#members
  21. Struct#select
  22. Struct#size
  23. Struct#to_a
  24. Struct#to_h
  25. Struct#to_json
  26. Struct#to_s
  27. Struct#values
  28. Struct#values_at

Symbol

  1. Symbol
  2. Symbol::all_symbols
  3. Symbol::json_create
  4. Symbol#<=>
  5. Symbol#==
  6. Symbol#===
  7. Symbol#=~
  8. Symbol#[]
  9. Symbol#as_json
  10. Symbol#capitalize
  11. Symbol#casecmp
  12. Symbol#casecmp?
  13. Symbol#downcase
  14. Symbol#empty?
  15. Symbol#encoding
  16. Symbol#end_with?
  17. Symbol#id2name
  18. Symbol#inspect
  19. Symbol#intern
  20. Symbol#length
  21. Symbol#match
  22. Symbol#match?
  23. Symbol#name
  24. Symbol#next
  25. Symbol#size
  26. Symbol#slice
  27. Symbol#start_with?
  28. Symbol#succ
  29. Symbol#swapcase
  30. Symbol#to_json
  31. Symbol#to_proc
  32. Symbol#to_s
  33. Symbol#to_sym
  34. Symbol#upcase

Syslog

  1. Syslog
  2. Syslog::close
  3. Syslog::facility
  4. Syslog::ident
  5. Syslog::inspect
  6. Syslog::instance
  7. Syslog::log
  8. Syslog::mask
  9. Syslog::mask=
  10. Syslog::open
  11. Syslog::open!
  12. Syslog::opened?
  13. Syslog::options
  14. Syslog::reopen
  15. Syslog::Constants
  16. Syslog::Constants::included
  17. Syslog::Logger
  18. Syslog::Logger#facility
  19. Syslog::Logger#formatter
  20. Syslog::Logger#level
  21. Syslog::Logger::make_methods
  22. Syslog::Logger::new
  23. Syslog::Logger::syslog
  24. Syslog::Logger::syslog=
  25. Syslog::Logger#add
  26. Syslog::Logger#debug
  27. Syslog::Logger#error
  28. Syslog::Logger#fatal
  29. Syslog::Logger#info
  30. Syslog::Logger#unknown
  31. Syslog::Logger#warn
  32. Syslog::Logger::Formatter
  33. Syslog::Logger::Formatter#call
  34. Syslog::Logger::Formatter#clean
  35. Syslog::Macros
  36. Syslog::Macros::included
  37. Syslog::Macros#LOG_MASK
  38. Syslog::Macros#LOG_UPTO

Tempfile

  1. Tempfile
  2. Tempfile::create
  3. Tempfile::new
  4. Tempfile::open
  5. Tempfile#close
  6. Tempfile#close!
  7. Tempfile#delete
  8. Tempfile#length
  9. Tempfile#open
  10. Tempfile#path
  11. Tempfile#size
  12. Tempfile#unlink

Thread

  1. Thread
  2. Thread::DEBUG
  3. Thread::DEBUG=
  4. Thread::abort_on_exception
  5. Thread::abort_on_exception=
  6. Thread::current
  7. Thread::exit
  8. Thread::fork
  9. Thread::handle_interrupt
  10. Thread::ignore_deadlock
  11. Thread::ignore_deadlock=
  12. Thread::kill
  13. Thread::list
  14. Thread::main
  15. Thread::new
  16. Thread::pass
  17. Thread::pending_interrupt?
  18. Thread::report_on_exception
  19. Thread::report_on_exception=
  20. Thread::start
  21. Thread::stop
  22. Thread#[]
  23. Thread#[]=
  24. Thread#abort_on_exception
  25. Thread#abort_on_exception=
  26. Thread#add_trace_func
  27. Thread#alive?
  28. Thread#backtrace
  29. Thread#backtrace_locations
  30. Thread#exit
  31. Thread#fetch
  32. Thread#group
  33. Thread#inspect
  34. Thread#join
  35. Thread#key?
  36. Thread#keys
  37. Thread#kill
  38. Thread#name
  39. Thread#name=
  40. Thread#native_thread_id
  41. Thread#pending_interrupt?
  42. Thread#priority
  43. Thread#priority=
  44. Thread#raise
  45. Thread#report_on_exception
  46. Thread#report_on_exception=
  47. Thread#run
  48. Thread#set_trace_func
  49. Thread#status
  50. Thread#stop?
  51. Thread#terminate
  52. Thread#thread_variable?
  53. Thread#thread_variable_get
  54. Thread#thread_variable_set
  55. Thread#thread_variables
  56. Thread#to_s
  57. Thread#value
  58. Thread#wakeup
  59. Thread::Backtrace
  60. Thread::Backtrace::limit
  61. Thread::Backtrace::Location
  62. Thread::Backtrace::Location#absolute_path
  63. Thread::Backtrace::Location#base_label
  64. Thread::Backtrace::Location#inspect
  65. Thread::Backtrace::Location#label
  66. Thread::Backtrace::Location#lineno
  67. Thread::Backtrace::Location#path
  68. Thread::Backtrace::Location#to_s
  69. Thread::ConditionVariable
  70. Thread::ConditionVariable::new
  71. Thread::ConditionVariable#broadcast
  72. Thread::ConditionVariable#signal
  73. Thread::ConditionVariable#wait
  74. Thread::Mutex
  75. Thread::Mutex::new
  76. Thread::Mutex#lock
  77. Thread::Mutex#locked?
  78. Thread::Mutex#owned?
  79. Thread::Mutex#sleep
  80. Thread::Mutex#synchronize
  81. Thread::Mutex#try_lock
  82. Thread::Mutex#unlock
  83. Thread::Queue
  84. Thread::Queue::new
  85. Thread::Queue#<<
  86. Thread::Queue#clear
  87. Thread::Queue#close
  88. Thread::Queue#closed?
  89. Thread::Queue#deq
  90. Thread::Queue#empty?
  91. Thread::Queue#enq
  92. Thread::Queue#length
  93. Thread::Queue#num_waiting
  94. Thread::Queue#pop
  95. Thread::Queue#push
  96. Thread::Queue#shift
  97. Thread::Queue#size
  98. Thread::SizedQueue
  99. Thread::SizedQueue::new
  100. Thread::SizedQueue#<<
  101. Thread::SizedQueue#clear
  102. Thread::SizedQueue#close
  103. Thread::SizedQueue#deq
  104. Thread::SizedQueue#empty?
  105. Thread::SizedQueue#enq
  106. Thread::SizedQueue#length
  107. Thread::SizedQueue#max
  108. Thread::SizedQueue#max=
  109. Thread::SizedQueue#num_waiting
  110. Thread::SizedQueue#pop
  111. Thread::SizedQueue#push
  112. Thread::SizedQueue#shift
  113. Thread::SizedQueue#size
  114. ThreadGroup
  115. ThreadGroup#add
  116. ThreadGroup#enclose
  117. ThreadGroup#enclosed?
  118. ThreadGroup#list

Time

  1. Time
  2. Time::at
  3. Time::httpdate
  4. Time::iso8601
  5. Time::json_create
  6. Time::local
  7. Time::new
  8. Time::now
  9. Time::parse
  10. Time::rfc2822
  11. Time::rfc822
  12. Time::strptime
  13. Time::utc
  14. Time::xmlschema
  15. Time::zone_offset
  16. Time#+
  17. Time#-
  18. Time#<=>
  19. Time#as_json
  20. Time#asctime
  21. Time#ceil
  22. Time#ctime
  23. Time#day
  24. Time#dst?
  25. Time#eql?
  26. Time#floor
  27. Time#friday?
  28. Time#getgm
  29. Time#getlocal
  30. Time#getutc
  31. Time#gmt?
  32. Time#gmt_offset
  33. Time#gmtime
  34. Time#gmtoff
  35. Time#hash
  36. Time#hour
  37. Time#httpdate
  38. Time#inspect
  39. Time#isdst
  40. Time#iso8601
  41. Time#localtime
  42. Time#mday
  43. Time#min
  44. Time#mon
  45. Time#monday?
  46. Time#month
  47. Time#nsec
  48. Time#rfc2822
  49. Time#rfc822
  50. Time#round
  51. Time#saturday?
  52. Time#sec
  53. Time#strftime
  54. Time#subsec
  55. Time#sunday?
  56. Time#thursday?
  57. Time#to_a
  58. Time#to_date
  59. Time#to_datetime
  60. Time#to_f
  61. Time#to_i
  62. Time#to_json
  63. Time#to_r
  64. Time#to_s
  65. Time#to_time
  66. Time#tuesday?
  67. Time#tv_nsec
  68. Time#tv_sec
  69. Time#tv_usec
  70. Time#usec
  71. Time#utc
  72. Time#utc?
  73. Time#utc_offset
  74. Time#wday
  75. Time#wednesday?
  76. Time#xmlschema
  77. Time#yday
  78. Time#year
  79. Time#zone

Timeout

  1. Timeout
  2. Timeout::timeout
  3. Timeout#timeout
  4. Timeout::Error
  5. Timeout::Error#thread
  6. Timeout::Error::catch
  7. Timeout::Error#exception

TracePoint

  1. TracePoint
  2. TracePoint::allow_reentry
  3. TracePoint::new
  4. TracePoint::stat
  5. TracePoint::trace
  6. TracePoint#binding
  7. TracePoint#callee_id
  8. TracePoint#defined_class
  9. TracePoint#disable
  10. TracePoint#enable
  11. TracePoint#enabled?
  12. TracePoint#eval_script
  13. TracePoint#event
  14. TracePoint#inspect
  15. TracePoint#instruction_sequence
  16. TracePoint#lineno
  17. TracePoint#method_id
  18. TracePoint#parameters
  19. TracePoint#path
  20. TracePoint#raised_exception
  21. TracePoint#return_value
  22. TracePoint#self

TrueClass

  1. TrueClass
  2. TrueClass#&
  3. TrueClass#===
  4. TrueClass#^
  5. TrueClass#|
  6. TrueClass#inspect
  7. TrueClass#to_s

TSort

  1. TSort
  2. TSort::each_strongly_connected_component
  3. TSort::each_strongly_connected_component_from
  4. TSort::strongly_connected_components
  5. TSort::tsort
  6. TSort::tsort_each
  7. TSort#each_strongly_connected_component
  8. TSort#each_strongly_connected_component_from
  9. TSort#strongly_connected_components
  10. TSort#tsort
  11. TSort#tsort_each
  12. TSort#tsort_each_child
  13. TSort#tsort_each_node

UnboundMethod

  1. UnboundMethod
  2. UnboundMethod#==
  3. UnboundMethod#arity
  4. UnboundMethod#bind
  5. UnboundMethod#bind_call
  6. UnboundMethod#clone
  7. UnboundMethod#eql?
  8. UnboundMethod#hash
  9. UnboundMethod#inspect
  10. UnboundMethod#name
  11. UnboundMethod#original_name
  12. UnboundMethod#owner
  13. UnboundMethod#parameters
  14. UnboundMethod#private?
  15. UnboundMethod#protected?
  16. UnboundMethod#public?
  17. UnboundMethod#source_location
  18. UnboundMethod#super_method
  19. UnboundMethod#to_s

URI

  1. URI
  2. URI::decode_www_form
  3. URI::decode_www_form_component
  4. URI::encode_www_form
  5. URI::encode_www_form_component
  6. URI::extract
  7. URI::for
  8. URI::join
  9. URI::open
  10. URI::parse
  11. URI::regexp
  12. URI::register_scheme
  13. URI::scheme_list
  14. URI::split
  15. URI::BadURIError
  16. URI::Error
  17. URI::File
  18. URI::File::build
  19. URI::File#check_password
  20. URI::File#check_user
  21. URI::File#check_userinfo
  22. URI::File#set_host
  23. URI::File#set_password
  24. URI::File#set_port
  25. URI::File#set_user
  26. URI::File#set_userinfo
  27. URI::FTP
  28. URI::FTP#typecode
  29. URI::FTP::build
  30. URI::FTP::new
  31. URI::FTP#check_typecode
  32. URI::FTP#path
  33. URI::FTP#set_path
  34. URI::FTP#set_typecode
  35. URI::FTP#to_s
  36. URI::FTP#typecode=
  37. URI::Generic
  38. URI::Generic#fragment
  39. URI::Generic#host
  40. URI::Generic#opaque
  41. URI::Generic#path
  42. URI::Generic#port
  43. URI::Generic#query
  44. URI::Generic#scheme
  45. URI::Generic::build
  46. URI::Generic::build2
  47. URI::Generic::component
  48. URI::Generic::default_port
  49. URI::Generic::new
  50. URI::Generic#+
  51. URI::Generic#-
  52. URI::Generic#==
  53. URI::Generic#absolute
  54. URI::Generic#absolute?
  55. URI::Generic#check_host
  56. URI::Generic#check_opaque
  57. URI::Generic#check_password
  58. URI::Generic#check_path
  59. URI::Generic#check_port
  60. URI::Generic#check_scheme
  61. URI::Generic#check_user
  62. URI::Generic#check_userinfo
  63. URI::Generic#coerce
  64. URI::Generic#component
  65. URI::Generic#component_ary
  66. URI::Generic#default_port
  67. URI::Generic#eql?
  68. URI::Generic#escape_userpass
  69. URI::Generic#find_proxy
  70. URI::Generic#fragment=
  71. URI::Generic#hash
  72. URI::Generic#hierarchical?
  73. URI::Generic#host=
  74. URI::Generic#hostname
  75. URI::Generic#hostname=
  76. URI::Generic#inspect
  77. URI::Generic#merge
  78. URI::Generic#merge!
  79. URI::Generic#merge_path
  80. URI::Generic#normalize
  81. URI::Generic#normalize!
  82. URI::Generic#opaque=
  83. URI::Generic#parser
  84. URI::Generic#password
  85. URI::Generic#password=
  86. URI::Generic#path=
  87. URI::Generic#port=
  88. URI::Generic#query=
  89. URI::Generic#registry=
  90. URI::Generic#relative?
  91. URI::Generic#replace!
  92. URI::Generic#route_from
  93. URI::Generic#route_to
  94. URI::Generic#scheme=
  95. URI::Generic#select
  96. URI::Generic#set_host
  97. URI::Generic#set_opaque
  98. URI::Generic#set_password
  99. URI::Generic#set_path
  100. URI::Generic#set_port
  101. URI::Generic#set_scheme
  102. URI::Generic#set_user
  103. URI::Generic#set_userinfo
  104. URI::Generic#split_path
  105. URI::Generic#split_userinfo
  106. URI::Generic#to_s
  107. URI::Generic#user
  108. URI::Generic#user=
  109. URI::Generic#userinfo
  110. URI::Generic#userinfo=
  111. URI::HTTP
  112. URI::HTTP::build
  113. URI::HTTP#authority
  114. URI::HTTP#origin
  115. URI::HTTP#request_uri
  116. URI::HTTPS
  117. URI::InvalidComponentError
  118. URI::InvalidURIError
  119. URI::LDAP
  120. URI::LDAP::build
  121. URI::LDAP::new
  122. URI::LDAP#attributes
  123. URI::LDAP#attributes=
  124. URI::LDAP#build_path_query
  125. URI::LDAP#dn
  126. URI::LDAP#dn=
  127. URI::LDAP#extensions
  128. URI::LDAP#extensions=
  129. URI::LDAP#filter
  130. URI::LDAP#filter=
  131. URI::LDAP#hierarchical?
  132. URI::LDAP#parse_dn
  133. URI::LDAP#parse_query
  134. URI::LDAP#scope
  135. URI::LDAP#scope=
  136. URI::LDAP#set_attributes
  137. URI::LDAP#set_dn
  138. URI::LDAP#set_extensions
  139. URI::LDAP#set_filter
  140. URI::LDAP#set_scope
  141. URI::LDAPS
  142. URI::MailTo
  143. URI::MailTo#headers
  144. URI::MailTo#to
  145. URI::MailTo::build
  146. URI::MailTo::new
  147. URI::MailTo#check_headers
  148. URI::MailTo#check_to
  149. URI::MailTo#headers=
  150. URI::MailTo#set_headers
  151. URI::MailTo#set_to
  152. URI::MailTo#to=
  153. URI::MailTo#to_mailtext
  154. URI::MailTo#to_rfc822text
  155. URI::MailTo#to_s
  156. URI::RFC2396_Parser
  157. URI::RFC2396_Parser#pattern
  158. URI::RFC2396_Parser#regexp
  159. URI::RFC2396_Parser::new
  160. URI::RFC2396_Parser#convert_to_uri
  161. URI::RFC2396_Parser#escape
  162. URI::RFC2396_Parser#extract
  163. URI::RFC2396_Parser#initialize_pattern
  164. URI::RFC2396_Parser#initialize_regexp
  165. URI::RFC2396_Parser#inspect
  166. URI::RFC2396_Parser#join
  167. URI::RFC2396_Parser#make_regexp
  168. URI::RFC2396_Parser#parse
  169. URI::RFC2396_Parser#split
  170. URI::RFC2396_Parser#unescape
  171. URI::RFC2396_REGEXP
  172. URI::RFC2396_REGEXP::PATTERN
  173. URI::WS
  174. URI::WS::build
  175. URI::WS#request_uri
  176. URI::WSS

Zlib

  1. Zlib
  2. Zlib::adler32
  3. Zlib::adler32_combine
  4. Zlib::crc32
  5. Zlib::crc32_combine
  6. Zlib::crc_table
  7. Zlib::deflate
  8. Zlib::gunzip
  9. Zlib::gzip
  10. Zlib::inflate
  11. Zlib::zlib_version
  12. Zlib::BufError
  13. Zlib::DataError
  14. Zlib::Deflate
  15. Zlib::Deflate::deflate
  16. Zlib::Deflate::new
  17. Zlib::Deflate#<<
  18. Zlib::Deflate#deflate
  19. Zlib::Deflate#flush
  20. Zlib::Deflate#initialize_copy
  21. Zlib::Deflate#params
  22. Zlib::Deflate#set_dictionary
  23. Zlib::Error
  24. Zlib::GzipFile
  25. Zlib::GzipFile::wrap
  26. Zlib::GzipFile#close
  27. Zlib::GzipFile#closed?
  28. Zlib::GzipFile#comment
  29. Zlib::GzipFile#crc
  30. Zlib::GzipFile#finish
  31. Zlib::GzipFile#level
  32. Zlib::GzipFile#mtime
  33. Zlib::GzipFile#orig_name
  34. Zlib::GzipFile#os_code
  35. Zlib::GzipFile#sync
  36. Zlib::GzipFile#sync=
  37. Zlib::GzipFile#to_io
  38. Zlib::GzipFile::CRCError
  39. Zlib::GzipFile::Error
  40. Zlib::GzipFile::Error#input
  41. Zlib::GzipFile::Error#inspect
  42. Zlib::GzipFile::LengthError
  43. Zlib::GzipFile::NoFooter
  44. Zlib::GzipReader
  45. Zlib::GzipReader::new
  46. Zlib::GzipReader::open
  47. Zlib::GzipReader::zcat
  48. Zlib::GzipReader#each
  49. Zlib::GzipReader#each_byte
  50. Zlib::GzipReader#each_char
  51. Zlib::GzipReader#each_line
  52. Zlib::GzipReader#eof
  53. Zlib::GzipReader#eof?
  54. Zlib::GzipReader#external_encoding
  55. Zlib::GzipReader#getbyte
  56. Zlib::GzipReader#getc
  57. Zlib::GzipReader#gets
  58. Zlib::GzipReader#lineno
  59. Zlib::GzipReader#lineno=
  60. Zlib::GzipReader#pos
  61. Zlib::GzipReader#read
  62. Zlib::GzipReader#readbyte
  63. Zlib::GzipReader#readchar
  64. Zlib::GzipReader#readline
  65. Zlib::GzipReader#readlines
  66. Zlib::GzipReader#readpartial
  67. Zlib::GzipReader#rewind
  68. Zlib::GzipReader#tell
  69. Zlib::GzipReader#ungetbyte
  70. Zlib::GzipReader#ungetc
  71. Zlib::GzipReader#unused
  72. Zlib::GzipWriter
  73. Zlib::GzipWriter::new
  74. Zlib::GzipWriter::open
  75. Zlib::GzipWriter#<<
  76. Zlib::GzipWriter#comment=
  77. Zlib::GzipWriter#flush
  78. Zlib::GzipWriter#mtime=
  79. Zlib::GzipWriter#orig_name=
  80. Zlib::GzipWriter#pos
  81. Zlib::GzipWriter#print
  82. Zlib::GzipWriter#printf
  83. Zlib::GzipWriter#putc
  84. Zlib::GzipWriter#puts
  85. Zlib::GzipWriter#tell
  86. Zlib::GzipWriter#write
  87. Zlib::Inflate
  88. Zlib::Inflate::inflate
  89. Zlib::Inflate::new
  90. Zlib::Inflate#<<
  91. Zlib::Inflate#add_dictionary
  92. Zlib::Inflate#inflate
  93. Zlib::Inflate#set_dictionary
  94. Zlib::Inflate#sync
  95. Zlib::Inflate#sync_point?
  96. Zlib::InProgressError
  97. Zlib::MemError
  98. Zlib::NeedDict
  99. Zlib::StreamEnd
  100. Zlib::StreamError
  101. Zlib::VersionError
  102. Zlib::ZStream
  103. Zlib::ZStream#adler
  104. Zlib::ZStream#avail_in
  105. Zlib::ZStream#avail_out
  106. Zlib::ZStream#avail_out=
  107. Zlib::ZStream#close
  108. Zlib::ZStream#closed?
  109. Zlib::ZStream#data_type
  110. Zlib::ZStream#end
  111. Zlib::ZStream#ended?
  112. Zlib::ZStream#finish
  113. Zlib::ZStream#finished?
  114. Zlib::ZStream#flush_next_in
  115. Zlib::ZStream#flush_next_out
  116. Zlib::ZStream#reset
  117. Zlib::ZStream#stream_end?
  118. Zlib::ZStream#total_in
  119. Zlib::ZStream#total_out


Время на прочтение
14 мин

Количество просмотров 59K

Это — статья-roadmap-cheatsheet для изучающих Ruby. Вместо того, чтобы рассказывать очередной how-to я постараюсь расписать все те вещи, которые, на мой взгляд, можно изложить кратко и емко, с упором на то, что программисту пришедшему с других языков и платформ может показаться не очевидным, антипоисковым и просто затратным по времени на изучение без подсказок — на остальное просто дам ссылки. Не смотря на то, что в природе существует множество туториалов/кастов/книг/чего угодно по чему угодно — именно такого формата мне самому всегда не хватает. И по сути, это те вещи, которые чаще всего рассказываю при вопросах «а как оно вообще?», «с чего начать?», «а как делается такая вот штука?», «а какой gem лучше?». Кстати, пока работал над этой статьей на Хабре появилась похожая про Python — видимо, идея витает в воздухе.

Около Ruby — слухи, интриги, расследования

Сразу оговорюсь, что текст под этим спойлером отличается от основной «объективной» части статьи, т.к. здесь изложено мое личное мнение и впечатление.

Язык программирования — это не только синтаксис, сборщик мусора, не только парадигма языка, и даже не столько его философия, в первую очередь — это коммьюнити и та кодовая база, которую это коммьюнити создало. Особенно сейчас, в эпоху OpenSource. И тут у Ruby первый жирный плюс в карму. Одна из особенностей — во всем читается прагматичная лень, начиная c опциональности скобок при вызове методов и точек с запятой в конце строки, продолжая емким и выразительным синтаксисом, и заканчивая общим ощущением от проектов — многие из них сделаны работающими из коробки, и требующих минимальных усилий, чтобы сконфигурировать их.

Многие выбирают Ruby, потому что это комфортно и приятно. Удовольствие и радость от программирования можно получить на разных языках — и в Ruby оно похоже на езду на хорошем авто, сидя за рулем которого будешь думать не столько о дороге, сколько о более важных вещах — хотя бы о маршруте и конечной цели поездки.
Также можно сравнить с игрой в Lego (и это во многом благодаря Gems). Хотя кто-то любит сварку арматуры, а кому-то достаточно картона и клея.

Есть несколько утверждений, которые иногда можно встретить о Ruby и Rails — попробую внести в них ясность.

Известно утверждение о том, что Ruby медленный. И поспорить сложно, ведь Ruby интерпретируемый язык. И что характерно, чаще всего я это слышу от тех кто пишет (исключительно) на PHP, который тоже интерпретируем, и по скорости в синтетических тестах находится примерно на том же уровне. Скорее всего, это отголоски дурной славы старых версий. По факту, мне приходилось работать и с Rails и с Symfony — на реальных приложениях Rails быстрее при одинаковом уровне оптимизации (и в обоих правильное кэширование — залог успеха). Если нужна скорость и компактность в памяти —

пишите на ассемблере

используйте Node.js. Но парадокс в том, что на нем как раз часто пишут рубисты — когда это действительно оправданно. И дело тут вот в чем: важна не только скорость работы, но и скорость написания приложения. И Ruby, и все то, что можно найти на github всячески помогает достичь действительно высокой производительности программиста — в том числе и в возможностях оптимизации приложения. И не нужно забывать, что и главная нагрузка, и бутылочные горлышки, зачастую — это базы данных, а веб-приложения это всего-лишь прослойка бизнес-логики. А такая прослойка неплохо масштабируется.

Есть еще своеобразный миф про высокие зарплаты Ruby-разработчиков с одной стороны, с другой — что работы на Ruby мало. Обычно сравнивают с зарплатами со средней по рынку на PHP, и количеством работы на нем же. Средний уровень зарплат на PHP — это классическая «средняя

зарп

температура по больнице». Если же сравнить специалистов по Yii/Symfony/Zend и Rails (можно еще добавить Django на Python) — картина выйдет совсем другая, а именно: и зарплаты и объем рынка примерно одинаковы. Действительно, хорошим программистам неплохо платят. И более того, когда берешься за проект с нуля — зачастую выбор платформы за тобой и твоей командой, а не заказчиком/начальством.

Так что, есть множество прекрасных языков и фреймворков для написания веб-приложений, и Ruby с Rails не являются серебряной пулей, которая убьет всех

зайцев

кроликов-оборотней сразу. Просто, на мой взгляд, если брать совокупность важных критериев, а не пытаться выбрать по одному-двум из них, RoR набирает действительно много очков. В том числе и по зрелости — это уже давно не хипстерская платформа, в которой есть только потенциал, но еще и не старичок (а примеров и тех и других уйма). И старичком, я думаю, еще долго не станет, т.к. потенциал для роста и развития еще есть и у Ruby и у Rails — но это тема для отдельной статьи.

И конечно, несмотря на направленность статьи на Rails, и популярность именно этой платформы — Ruby это далеко не только Rails.

В любом случае, я убежден, что программист не должен сидеть в своем маленьком мирке того, за что ему сегодня платят зарплату. Ruby дает в этом смысле не только +1 язык в резюме, но и, за счет своей ооп-направленности и широким возможностям метапрограммирования, опыт, который пригодится на разных языках и платформах.

Язык Ruby: история становления и перспективы развития

Ruby

Начало

Как установить Ruby на #{ os_name }?

Сами ссылки:

  • Win. По той же ссылке можно найти DevKit, которой пригодится для работы с БД и установки Native Extensions
  • Rails Installer установит сразу Ruby + DevKit, Git, Rails, Bundler и SQLite, на Windows или MacOS. Ruby, правда, 1.9.3, а установщик с 2.0 еще в alpha. (по совету Jabher)
  • *nix — ищите в своих репозиториях, или legacy

Кроме того, есть такая штука как RVM. Она позволяет установить несколько версий Ruby на одной ОС и переключаться между ними. На старте в ней потребности нет, но бывает полезна, если уже есть несколько проектов на локальной машине или на сервере — обновляться на всех разом до новой версии сразу не особо здорово. Пока — просто имейте ввиду, что она есть.
Подробно про RVM на хабре.

Тут же стоит упомянуть про среду разработки. Я приверженец продуктов JetBrains, поэтому рекомендую RubyMine, но ввиду того, что продукт коммерческий кому-то может прийтись по вкусу свободная Aptana Studio. Если же приятнее пользоваться легкими текстовыми редакторами — синтаксис Ruby поддерживается многими.

Прямо в браузере в интерактивном режиме Ruby можно попробовать на tryruby.org

Все — объект

Включая числа, строки и даже nil — они все наследуются от класса Object. Можно у чего угодно вызывать методы вроде nil?, class, methods и respond_to?:

'Hello world'.class # String
nil.class # NilClass
String.class # Class
String.anc­estors # [String, Comparable, Object, Kernel, BasicObject]; массив предков класса
nil.nil? # true
Object.new.methods # вернет методы объекта класса Object; тут же видно как создается новый объект - тоже вызовам метода
nil.respond_to?('nil?') # true

По поводу последнего: это важно для утиной типизации.

Синтаксис и пудра

Ruby сильно приправлен «синтаксическим сахаром», благодаря которому зачастую не нужно городить кашу из различных скобок, точек с запятыми и прочего. А под ним — прост и логичен, и сохраняет парадигму «все — объект».

a == b # то же, что и
a.==(b) # то есть .==() - это метод

В вызовах методов, в if можно не ставить скобки, если нет неоднозначности

nil.respond_to?('nil?') # true
nil.respond_to? 'nil?' # true
# все однозначно:
if nil.respond_to? 'nil?'
  puts 'ok'
end
# тоже
if 10.between? 1, 5
  puts 'ok'
end
# а вот так получится не тот приоритет вызовов, поэтому нужны скобки
if 10.between?(1, 50) && 20.between?(1, 50)
  puts 'ok'
end

А еще — есть символы. По сути, символы — это неизменяемые строки. Например, они часто используются как ключи в хэшах.

a = :nil? # символ
b = 'nil?' # строка
nil.respond_to? a # true
nil.respond_to? b # true
# поиграемся
a == b # false
a.to_s == b && a == b.to_sym # true; символ и строка преобразуются друг в друга

С ними связано еще немного пудры:

a = {:key1 => 'value1', :key2 => 'value2'} # создаем хэш (ассоциативный массив)
a = {key1: 'value1', key2: 'value2'} # если ключи - символы, то можно так (Ruby >= 1.9.3)

Раз уж тема зашла:

a = ['value1', 'value2'] # это массив
s = 'String'
s = "Double-quoted #{s}" # "Double-quoted String" - это, думаю, ясно

И добьем тему припудривания немного уродливым, но зато удобным способом записи:

%w[value1 value2] # ["value1", "value2"] - тот же массив, что и выше
%i[value1 value2] # [:value1, :value2] - массив символов, (Ruby >= 2.0)
s = %q(String)
s = %Q(Double-quoted #{s})
%x('ls') # команда консоли
`ls` # то же самое
%r(.*) == /.*/ # true; два способа создать регулярное выражение

Кстати, в Ruby есть многим до боли знакомая точка с запятой — пригодиться она может чтобы записать несколько выражений в одну строку

a = 10; puts a # выведет в консоль 10
if nil.respond_to? 'nil?'; puts 'ok'; end # чтобы было понятно - так тоже можно

Но однострочные if лучше писать так

puts 'ok' if nil.respond_to? 'nil?'

Классы, модули и метапрограммирование

Классы в Ruby вполне очевидны, но в возможностях работы с ними кроется вся сила и прелесть Ruby.

class Foo
  def bar
    10 # любой метод возвращает значение - результат выполнения последнего выражения
  end
  def baz(a)
    bar + 20
  end
end
puts Foo.new.baz(10) # 30

Module — к нему можно относиться и как к примеси, и как к пространству имен. Внезапно? По сути — это набор классов, методов и констант, и пользоваться им можно на свое усмотрение.

module B # как пространство имен
  class Foo
    # конструктор
    def initialize(k) @k = k end # запишем методы в одну строку
    def bar; @k + 20 end
  end
end
puts B.Foo.new(3).bar # 23
puts B::Foo.new(3).bar # 23; то же самое, но читается лучше

module C # как примесь
  def bar; @k + 25 end
end
class Foo
  include C;
  def initialize(k) @k = k end
end
puts Foo.new(3).bar # 28

В Ruby классы мутабельны, и их можно патчить после их создания. И тут будьте осторожны: здесь начинаются те самые возможности, при помощи которых можно «выстрелить себе в ногу» — так что, делая что-то подобное нужно всегда отдавать отчет: зачем, что получится,

кто виноват и что делать

и если что — виноваты сами.

class Foo
  def bar; 20 end
end
class Foo # патчим
  def baz; bar + 2 end
end
puts Foo.new.baz # 22
# или лучше - так: сразу понятно что это патч
Foo.class_eval do
  def bazz; bar + 3 end
end
puts Foo.new.bazz # 23
# но если нет на то веской причины - используйте примеси или наследование
class Boo < Foo
  def boo; bar + 2 end
end
puts Boo.new.boo # 22
# или же - можно пропатчить только объект, а не сам класс
a = Foo.new
a.instance_eval do # патчим объект
  def booo; bar + 3 end
end
puts a.booo # 23
puts Foo.new.booo rescue puts 'error' # error; кстати, так перехватываются ошибки
puts a.respond_to? :booo # true
puts Foo.new.respond_to? :booo # false
# или - патчим объект в более легком синтаксисе
def a.booboo
  bar + 4
end
puts a.booboo # 24

А что если сделать instance_eval для класса? Конечно же, добавятся статические методы.

class Foo
  def self.bar; 10 end # обычный статический метод
end
puts Foo.bar # 10
Foo.instance_eval do
  def baz; bar + 1 end
end
puts Foo.baz # 11

Играться с этим можно вдоволь, главное помните — берегите ноги.

class Foo
  def self.add_bar # добавим статический метод, который патчит класс
	self.class_eval do
	  def bar; 'bar' end
	end
  end
end
puts Foo.new.respond_to? :bar # false
class Boo < Foo # отнаследуемся
  add_bar # пропатчим
end
puts Boo.new.bar # bar

# а теперь все то же самое, но пропатчим уже существующий класс
Foo.instance_eval do
  def add_baz
    self.class_eval do
      def baz; 'baz' end
    end	
  end
end
class Baz < Foo
  add_baz
end
puts Baz.new.baz # baz

Как раз такой подход используется на практике — по сути, получается что-то вроде примеси, в которую можно передавать параметры. Это кажется магией, если не знать, как это делается. Патчить можно и базовые классы, особенно любимы Array и String — но всегда стоит подумать трижды, прежде чем начинать их мучить: одно дело методы вроде .blank? (его добавляет Rails: что-то вроде def blank?; nil? || empty? end), другое — когда код метода специфичен для проекта, тогда логично предположить, что он относится к каким-то классам внутри проекта.

По такому принципу работает, например accessor. Что мы сделаем, чтобы добавить публичный параметр в Ruby-класс?

class Foo
  def bar # геттер
    @bar # возвращаем параметр
  end
  def bar=(val) # сеттер
    @bar = val # присваиваем значение параметру
  end
end

Представляете так писать для десятка-другого параметров? В Ruby много кода по накатанному — смертный грех: DRY. Так что, можно сделать короче.

class Foo
  attr_accessor :bar, :baz # добавим сразу парочку атрибутов
  attr_reader :boo # только геттер
  attr_writer :booo # только сеттер
end

Готовы дальше? Тогда:
Вникаем в метаклассы Ruby
Metaprogramming patterns — про monkey patching, Reuse в малом — bang!, eval
Вникаем в include и extend

Аргументы методов

Ruby 2.0 поддерживает именованные аргументы методов:

# bar обязателен
# barr имеет значение по умолчанию 0
# baz - именованный аргумент со значением по умолчанию true
def foo(bar, barr = 0, baz: true)
  baz && bar + barr
end
p foo 1 # 1
p foo 1, 2 # 3
p foo 1, baz: false # false

В предыдущих версиях добиться такого же поведения можно, разбирая атрибуты:

def foo2(bar, *args)
  args
end
p foo2 1, 2, :baz => false # [2, {:baz=>false}]

def foo3(bar, *args)
  options = args.extract_otions! # именованные аргументы вырезаются из args
  p bar
  p args
  p options
end
foo3 1, 2, 3, :baz => false
# 1
# [2, 3]
# {:baz=>false}

Начиная с Ruby 2.1 появилась возможность добавлять обязательные именованные аргументы.

def foo4(bar, baz:); bar end
foo4 1 # ошибка
foo4 1, baz: 2 # 1

Замыкания и блоки

Некоторое недоумение поначалу вызывают блоки, замыкания и класс Proc — зачем столько всего? Вкратце — на самом деле, есть только Proc.
Подробно — ссылки внизу, а сейчас — на что стоит обратить внимание.
Первыми рассмотрим блоки. Блок — это просто кусок куда, и даже не объект, просто часть синтаксиса Ruby. Блок используется чтобы передать какой-то код в метод. И уже в методе он оказывается завернут его в класс Proc.
В разделе про классы и методы они уже использовались:

Foo.instance_eval do # передаем в метод instance_eval блок с определением метода
  def baz; bar + 1 end
end

Но возьмем более базовый пример, он же «как сделать foreach в Ruby»:

[1,2,3].each do |val|
  p val # кстати, p(val) - это shortcut для puts(val.inspect)
end # выводит 1 2 3

# то же, в одну строчку 
[1,2,3].each { |val| p val } # выводит 1 2 3
[1,2,3].each_with_index { |val, i| puts val.to_s + ' ' + i.to_s } # на заметку

Если же мы хотим передавать блок в собственный метод:

def foo
  puts yield # выполняем блок
  puts yield + yield # и еще, и еще выполняем
end
foo { 2 } # 2 4
def bar(&block) # или, если поменьше пудры
  puts yield block # выполняем блок
end
bar { 3 } # 3

Стоит отметить, что блок идет всегда последним параметром, и если нужно передать несколько блоков — нужно их передавать как обычные параметры, а значит создавать Proc.new, или lambda.

Из блока всегда получается объект класса Proc, но сам блок это часть синтаксиса: мы можем его передать в метод, где он станет Proc, мы можем его передать в конструктор Proc, или использовать lambda, но нельзя просто записать блок в переменную.

proc = Proc.new { |a| a - 1 } # через конструктор
p proc.call(10) #9
p proc.class # Proc
l = lambda { |a| a + 1 } # создаем лямбду
p l.call(10) #11
p l.class # Proc
new_l = ->(a) { a + 2 } # тоже лямбда (Ruby >= 2.0)
p new_l.call(10) #12

Различия в поведении Proc созданными разными способами есть, читаем статью.
Здесь замыкания и блоки в Ruby разобраны вдоль и попрек
На Хабре про блоки, про замыкания

Стиль

По поводу как принято писать в Ruby есть целый гайд на GitHub
Вкратце, frequently used:

  • Отступы в 2 пробела
  • Названия методов строчными буквами через подчеркивание: def method_name
  • Названия классов и модулей с больших букв: class ClassName
  • Если метод возвращает true/false, название должно заканчиваться на вопрос (тот же, nil?)
  • Если есть два метода, один из которых изменяет объект, а другой возвращает новый — первый оканчивается на ‘!’ (например, методы downcase и downcase! для строки — первый вернет новую, а второй изменит саму строку)
  • Вместо if(!value) лучше использовать алиас unless(value)
  • Блок однострочный берется в скобки {… }, а многострочный — в do… end

RubyGems — пакетный менеджер

Мир Ruby, наверное, был бы совсем другим, если бы не RubyGems.
С ними процесс дополнения проекта библиотеками выглядит очень просто:

  • выбираем что нам нужно с rubygems.org (или через ruby-toolbox.com), например, json_pure — JSON парсер на чистом Ruby (без C)
  • вводим в консоли gem install json_pure
  • а в нашем rb-файле:
    require 'json/pure' # какой именно путь должен быть стоит в доках посмотреть, обычно на github

Для удобства управления зависимостями есть bundler:

  • gem install bundler
  • bundler init
  • в появившемся Gemfile вписываем зависимости:
    source 'https://rubygems.org'
    gem 'json_pure'
    
  • bundler install
  • И в своем rb-файле
    require 'rubygems'
    require 'bundler/setup'
    

В реальных проектах список зависимостей может разрастись на несколько экранов, поэтому при переносе проекта на сервер гораздо удобнее выполнять bundle install, чем вручную смотреть что нужно и для каждого гема выполнять gem install. Ну а в Rails bundler используется из коробки.

Сами Gems обязательно рассмотрю в статье про Rails.

RubyGems — подробно
Управляем версиями с помощью Bundler
Знакомство с Gem. Часть первая Часть вторая
Пишем свой первый gem
Делаем gem для RubyGems
Создание гемов — Руководство

Ruby и C

Далеко не последняя по важности возможность RubyGems — Native Extensions. Все просто — вместе с гемом может быть скомпилирован прилагающийся код на C и вызван из кода самого гема. Благодаря этому, среди них есть достаточно шустрые парсеры, можно установить JavaScript’овый V8 в виде гема, и много других вкусностей.

А это нужно просто иметь ввиду: Inline C, может пригодится. Если коротко — в коде Ruby можно исполнять код на C, что полезно, например, при реализации численных алгоритмов.

Введение в расширения Ruby на C
Ruby и C. Часть 1, Часть 2, Часть 3.

Потоки

Простой пример с потоком:

thread = Thread.new do # создается отдельный поток
  a = 0
  1000000.times { a+= 1 } # загружаем процессор на некоторое время
  puts a # вывод результата
end
puts 'thread started' # текст выводится сразу после запуска потока
thread.join # ожидание завершения работы потока

Код выведет в консоль «thread started 100000».

Более низкоуровневые fibers (волокна) предлагают немного другой синтаксис, позволяющий управлять последовательностью исполнения, а также имеют меньшие издержки по памяти и времени инициализации, чем threads.

fiber = Fiber.new do # создание нового волокна
  Fiber.yield "fiber 1" # управление возвращается в контекст
  'fiber 2' # возвращаемое значение
end

puts fiber.resume # запуск волокна
puts 'context'
puts fiber.resume # возобновление работы волокна

Код выведет «fiber 1 context fiber 2».

Про GIL и настоящую многопоточность

Ruby поддерживает многопоточность, и различные версии интерпретатора отличаются ее реализацией. GIL в основной ветке сводит распараллеливание вычислений на нет, но использование потоков в нем имеет смысл для реализации асинхронности. Самый простой пример: мы можем слушать пользовательский интерфейс, параллельно выполняя какие-то операции. Или можем отправить запрос к БД и ждать ответа в одном потоке, отправлять email в другом, и не дожидаясь завершения отправить ответ пользователю. Но в суммарном времени исполнения выигрыша не будет, т.к. фактически в каждый момент времени будет нагружаться только одно ядро.

Чтобы обойти это ограничение можно использовать версии без GIL — jRuby или Rubinius (и при этом помнить, что потокобезопасность в них существенно ниже — для нее и нужен GIL). Другой вариант — запускать несколько отдельных копий программы, или использовать UNIX-форки (естественно, пулом таких воркеров вполне можно управлять Ruby-скриптом).

Узнав все это начинающий рубист может прийти в замешательство (желая использовать всю мощь своего 48-поточного сервера без лишней головной боли). На практике реальная многопоточность не всегда нужна (а иногда — если и нужна, то когда-нибудь потом). Кроме того, для многих задач есть соответствующие gem’ы, реализующие разные подходы, в том числе готовые HTTP-серверы (которые будут рассмотрены в статье про gems) и асинхронные фреймворки.

GIL нужен для этого:

a = 0
threads = []
10.times do # создаем 10 потоков
  threads << Thread.new do # добавляем объекты потоков в массив
    100000.times { a+= 1 } # 100 000
  end
end
threads.each(&:join) # ждем завершения всех потоков
puts a # вывод результата

Код выведет 1 000 000 в MRI, и черт знает что (от 100 000 до 1 000 000) в jRuby и Rubinius.

Используем потоки в Ruby

Зоопарк версий

MRI (Matz’s Ruby Interpreter) — основная ветка Ruby от его создателя Yukihiro Matsumoto, или просто, Matz. Реализована на C. Когда просто говорят «Ruby» обычно имеют ввиду ее. Начиная с версии 1.9 объединена с проектом YARV (Yet another Ruby VM). Одна из основных ее особенностей — так называемый GIL (Global Interpreter Lock), на Хабре про нее писали (с продолжением). Сейчас актуальная версия

Ruby 2.0

UPD: вышел Ruby 2.1. Чего нам ждать от Ruby 2.1?

jRuby, который написан на Java и работает в JVM, и соответственно интегрируется с кодом на Java. К сожалению, версия языка отстает от MRI (сейчас реализован Ruby 1.9.3), но тот же Rails заводится на нем с пол оборота.

Rubinius, который основан на MRI, но использует потоки операционной системы, а так же по максимуму написан на самом Ruby. По версии обычно up do date.

Скорость всех трех реализаций относительно друг друга разнится от задачи к задаче, а по потреблению памяти из троицы самый прожорливый — jRuby.

MacRuby — работает в связке с Objective-C на LLVM, заменив тем самым более ранний проект RubyCocoa. Для разработки под iOS существует форк MacRuby — RubyMotion.

IronRuby — реализация на платформе .NET. На протяжении своей жизни то забрасывается, то снова возобновляется разработка.

Opal — транслятор Ruby в JavaScript. Но не надо ждать от него чего-то выдающегося, это не jRuby для Node.js — он просто дает возможность писать ваш jQuery-код на Ruby. Или Express-код под Node.js. В общем, вариация на тему CoffeeScript.

Ruby Enterprise Edition (REE) — Ruby на стероидах. Проект завершил свое существование, т.к. новые версии и без наркотиков неплохо бегают.

Можно упомянуть MagLev — специфическая версия, может пригодится для разворачивания облачной инфраструктуры.

Также интересен проект mruby, в котором участвует Matz. Это — встраиваемый Ruby. Проект еще не закончен, но весьма многообещающе выглядит.

Так что, ждем ruby на Arduino.

mruby-arduino. На нем же основан MobiRuby, предназначенный для разработки мобильных приложений.

Ну и на закуску, KidsRuby, по смыслу напоминающий старичка Logo.

upd:
learnxinyminutes.com/docs/ruby — примеры кода на Руби.

Search code, repositories, users, issues, pull requests…

Provide feedback

Saved searches

Use saved searches to filter your results more quickly

Sign up

Like this post? Please share to your friends:
  • Эмолиум крем инструкция по применению для новорожденных
  • Инструкция как пользоваться ершиком для унитаза в картинках
  • Руководство ноутбук apple
  • Посудомоечная машина lg direct drive инструкция
  • Геделикс инструкция по применению цена отзывы аналоги таблетки цена