Ruby/Language Basics/Reserved words
Материал из Wiki.crossplatform.ru
Classes and modules begin with an upper case letter.
This is actually enforced by Ruby"s interpreter. Each word in a class name begins with an upper case (unless it"s part of an acronym): module Observable module ParseDate class StringInputMethod class StringReplace class XMP
If a method name ends in an equals sign (=), as in family_name=
the method is a "setter," class Name def family_name=( family ) @family_name = family end def given_name=( given ) @given_name = given end end n = Name.new n.family_name= "Matsumoto" # => "Matsumoto" n.given_name= "Yukihiro" # => "Yukihiro" p n # => <Name:0x1d441c @family_name="Matsumoto", @given_name="Yukihiro">
If a method name ends in an exclamation point (!), as in delete!
it indicates that the method is destructive, it makes changes in place to an object rather than to a copy. It changes the object itself. the difference in result between the String methods delete and delete!: der_mensch = "myValue!" # => "myValue!" der_mensch.delete( "!" ) # => "myValue" puts der_mensch # => myValue! der_mensch.delete!( "!" ) # => "myValue" puts der_mensch # => myValue
If a method name ends with a question mark (?), as in eql?, then the method returns a Boolean
x = 1.0 y = 1.0 x.eql? y # => true
Ruby"s reserved words
Reserved word Description BEGIN Code, enclosed in { and }, to run before the program runs. END Code, enclosed in { and }, to run when the program ends. alias Creates an alias for an existing method, operator, or global variable. and Logical operator; same as && except and has lower precedence. begin Begins a code block or group of statements; closes with end. break Terminates a while or until loop or a method inside a block. \case Compares an expression with a matching when clause; closes with end. class Defines a class; closes with end. def Defines a method; closes with end. defined? Determines if a variable, method, super method, or block exists. do Begins a block and executes code in that block; closes with end. else Executes if previous conditional, in if, elsif, unless, or when, is not true. elsif Executes if previous conditional, in if or elsif, is not true. end Ends a code block (group of statements) starting with begin, def, do, if, etc. ensure Always executes at block termination; use after last rescue. false Logical or Boolean false, instance of FalseClass. (See true.) for Begins a for loop; used with in. if Executes code block if true. Closes with end. module Defines a module; closes with end. next Jumps before a loop"s conditional. nil Empty, uninitialized variable, or invalid, but not the same as zero; object of NilClass. not Logical operator; same as !. or Logical operator; same as || except or has lower precedence. redo Jumps after a loop"s conditional. rescue Evaluates an expression after an exception is raised; used before ensure. retry Repeats a method call outside of rescue; jumps to top of block (begin) if inside rescue. return Returns a value from a method or block. May be omitted. self Current object (invoked by a method). super Calls method of the same name in the superclass. The superclass is the parent of this class. then A continuation for if, unless, and when. May be omitted. true Logical or Boolean true, instance of TrueClass. undef Makes a method in current class undefined. unless Executes code block if conditional statement is false. until Executes code block while conditional statement is false. when Starts a clause (one or more) under case. while Executes code while the conditional statement is true. yield Executes the block passed to the method. _ _FILE_ _ Name of current source file. _ _LINE_ _ Number of current line in the current source file.