ruby--ruby/doc/globals.rdoc

70 lines
4.3 KiB
Plaintext

# -*- mode: rdoc; coding: utf-8; fill-column: 74; -*-
== Pre-defined global variables
$!:: The Exception object set by Kernel#raise.
$@:: The same as <code>$!.backtrace</code>.
$~:: The information about the last match in the current scope (thread-local and frame-local).
$&:: The string matched by the last successful match.
$`:: The string to the left of the last successful match.
$':: The string to the right of the last successful match.
$+:: The highest group matched by the last successful match.
$1:: The Nth group of the last successful match. May be > 1.
$=:: This variable is no longer effective. Deprecated.
$/:: The input record separator, newline by default. Aliased to $-0.
$\:: The output record separator for Kernel#print and IO#write. Default is +nil+.
$,:: The output field separator for Kernel#print and Array#join. Non-nil $, will be deprecated.
$;:: The default separator for String#split. Non-nil $; will be deprecated. Aliased to $-F.
$.:: The current input line number of the last file that was read.
$<:: The same as ARGF.
$>:: The default output stream for Kernel#print and Kernel#printf. $stdout by default.
$_:: The last input line of string by gets or readline.
$0:: Contains the name of the script being executed. May be assignable.
$*:: The same as ARGV.
$$:: The process number of the Ruby running this script. Same as Process.pid.
$?:: The status of the last executed child process (thread-local).
$LOAD_PATH:: Load path for searching Ruby scripts and extension libraries used
by Kernel#load and Kernel#require. Aliased to $: and $-I.
Has a singleton method <code>$LOAD_PATH.resolve_feature_path(feature)</code>
that returns [+:rb+ or +:so+, path], which resolves the feature to
the path the original Kernel#require method would load.
$LOADED_FEATURES:: The array contains the module names loaded by require.
Aliased to $".
$DEBUG:: The debug flag, which is set by the <tt>-d</tt> switch. Enabling debug
output prints each exception raised to $stderr (but not its
backtrace). Setting this to a true value enables debug output as
if <tt>-d</tt> were given on the command line. Setting this to a false
value disables debug output. Aliased to $-d.
$FILENAME:: Current input filename from ARGF. Same as ARGF.filename.
$stderr:: The current standard error output.
$stdin:: The current standard input.
$stdout:: The current standard output.
$VERBOSE:: The verbose flag, which is set by the <tt>-w</tt> or <tt>-v</tt> switch.
Setting this to a true value enables warnings as if <tt>-w</tt> or <tt>-v</tt> were given
on the command line. Setting this to +nil+ disables warnings,
including from Kernel#warn. Aliased to $-v and $-w.
$-a:: True if option <tt>-a</tt> is set. Read-only variable.
$-i:: In in-place-edit mode, this variable holds the extension, otherwise +nil+.
$-l:: True if option <tt>-l</tt> is set. Read-only variable.
$-p:: True if option <tt>-p</tt> is set. Read-only variable.
== Pre-defined global constants
STDIN:: The standard input. The default value for $stdin.
STDOUT:: The standard output. The default value for $stdout.
STDERR:: The standard error output. The default value for $stderr.
ENV:: The hash contains current environment variables.
ARGF:: The virtual concatenation of the files given on command line (or from $stdin if no files were given).
ARGV:: An Array of command line arguments given for the script.
DATA:: The file object of the script, pointing just after <code>__END__</code>.
TOPLEVEL_BINDING:: The Binding of the top level scope.
RUBY_VERSION:: The Ruby language version.
RUBY_RELEASE_DATE:: The release date string.
RUBY_PLATFORM:: The platform identifier.
RUBY_PATCHLEVEL:: The patchlevel for this Ruby. If this is a development build of Ruby the patchlevel will be -1.
RUBY_REVISION:: The GIT commit hash for this Ruby.
RUBY_COPYRIGHT:: The copyright string for Ruby.
RUBY_ENGINE:: The name of the Ruby implementation.
RUBY_ENGINE_VERSION:: The version of the Ruby implementation.
RUBY_DESCRIPTION:: The same as <tt>ruby --version</tt>, a String describing various aspects of the Ruby implementation.