Keywords

The following keywords are used by Ruby.

__ENCODING__

The script encoding of the current file. See Encoding.

__LINE__

The line number of this keyword in the current file.

__FILE__

The path to the current file.

BEGIN

Runs before any other code in the current file. See miscellaneous syntax

END

Runs after any other code in the current file. See miscellaneous syntax

alias

Creates an alias between two methods (and other things). See modules and classes syntax

and

Short-circuit Boolean and with lower precedence than &&

begin

Starts an exception handling block. See exceptions syntax

break

Leaves a block early. See control expressions syntax

case

Starts a case expression. See control expressions syntax

class

Creates or opens a class. See modules and classes syntax

def

Defines a method. See methods syntax

defined?

Returns a string describing its argument. See miscellaneous syntax

do

Starts a block.

else

The unhandled condition in case, if and unless expressions. See control expressions

elsif

An alternate condition for an if expression. See control expressions

end

The end of a syntax block. Used by classes, modules, methods, exception handling and control expressions.

ensure

Starts a section of code that is always run when an exception is raised. See exception handling

false

Boolean false. See literals

for

A loop that is similar to using the each method. See control expressions

if

Used for if and modifier if statements. See control expressions

in

Used to separate the iterable object and iterator variable in a for loop. See control expressions It also serves as a pattern in a case expression. See pattern matching

module

Creates or opens a module. See modules and classes syntax

next

Skips the rest of the block. See control expressions

nil

A false value usually indicating “no value” or “unknown”. See literals

not

Inverts the following boolean expression. Has a lower precedence than !

or

Boolean or with lower precedence than ||

redo

Restarts execution in the current block. See control expressions

rescue

Starts an exception section of code in a begin block. See exception handling

retry

Retries an exception block. See exception handling

return

Exits a method. See methods. If met in top-level scope, immediately stops interpretation of the current file.

self

The object the current method is attached to. See methods

super

Calls the current method in a superclass. See methods

then

Indicates the end of conditional blocks in control structures. See control expressions

true

Boolean true. See literals

undef

Prevents a class or module from responding to a method call. See modules and classes

unless

Used for unless and modifier unless statements. See control expressions

until

Creates a loop that executes until the condition is true. See control expressions

when

A condition in a case expression. See control expressions

while

Creates a loop that executes while the condition is true. See control expressions

yield

Starts execution of the block sent to the current method. See methods