Keyword list in Ruby: http://ruby-doc.org/docs/keywords/1.9/
% for i in BEGIN END __ENCODING__ __END__ __FILE__ __LINE__
alias and begin break case class def defined\? do else elsif end ensure false for
if in module next nil not or redo rescue retry return self super then true undef unless
until when while yield ;
do
echo $i;
ruby -e "puts $i.methods.length";
done
BEGIN
-e:1: syntax error, unexpected keyword_BEGIN
puts BEGIN.methods.length
^
END
-e:1: syntax error, unexpected keyword_END
puts END.methods.length
^
__ENCODING__
60
__END__
-e:1:in `<main>': undefined local variable or method `__END__' for main:Object (NameError)
__FILE__
161
__LINE__
128
alias
-e:1: syntax error, unexpected keyword_alias
puts alias.methods.length
^
and
-e:1: syntax error, unexpected '.'
puts and.methods.length
^
begin
-e:1: syntax error, unexpected '.'
puts begin.methods.length
^
-e:1: syntax error, unexpected end-of-input, expecting keyword_end
break
-e:1: void value expression
puts break.methods.length
^
case
-e:1: syntax error, unexpected '.', expecting keyword_when
puts case.methods.length
^
class
-e:1: syntax error, unexpected '.'
puts class.methods.length
^
def
-e:1: syntax error, unexpected '.'
puts def.methods.length
^
defined?
-e:1: syntax error, unexpected '.'
puts defined?.methods.length
^
do
-e:1: syntax error, unexpected '.'
puts do.methods.length
^
-e:1: syntax error, unexpected end-of-input, expecting keyword_end
else
-e:1: syntax error, unexpected keyword_else, expecting end-of-input
puts else.methods.length
^
elsif
-e:1: syntax error, unexpected keyword_elsif, expecting end-of-input
puts elsif.methods.length
^
end
-e:1: syntax error, unexpected keyword_end, expecting end-of-input
puts end.methods.length
^
ensure
-e:1: syntax error, unexpected keyword_ensure, expecting end-of-input
puts ensure.methods.length
^
false
57
for
-e:1: syntax error, unexpected '.'
puts for.methods.length
^
if
-e:1: syntax error, unexpected '.'
puts if.methods.length
^
in
-e:1: syntax error, unexpected keyword_in, expecting end-of-input
puts in.methods.length
^
module
-e:1: syntax error, unexpected '.'
puts module.methods.length
^
next
-e:1: void value expression
puts next.methods.length
^
nil
64
not
-e:1: syntax error, unexpected '.', expecting '('
puts not.methods.length
^
or
-e:1: syntax error, unexpected '.'
puts or.methods.length
^
redo
-e:1: void value expression
puts redo.methods.length
^
rescue
-e:1: syntax error, unexpected '.'
puts rescue.methods.length
^
retry
-e:1: void value expression
puts retry.methods.length
^
return
-e:1: void value expression
puts return.methods.length
^
self
54
super
-e:1:in `<main>': super called outside of method (NoMethodError)
then
-e:1: syntax error, unexpected keyword_then, expecting end-of-input
puts then.methods.length
^
true
57
undef
-e:1: syntax error, unexpected keyword_undef
puts undef.methods.length
^
unless
-e:1: syntax error, unexpected '.'
puts unless.methods.length
^
until
-e:1: syntax error, unexpected '.'
puts until.methods.length
^
when
-e:1: syntax error, unexpected keyword_when, expecting end-of-input
puts when.methods.length
^
while
-e:1: syntax error, unexpected '.'
puts while.methods.length
^
yield
-e:1:in `<main>': no block given (yield) (LocalJumpError)
Anything prepended with self.
is seen as a method.
% for i in BEGIN END __ENCODING__
__END__ __FILE__ __LINE__ alias and begin break case
class def defined\? do else elsif end ensure
false for if in module next nil not or redo
rescue retry return self super then true undef
unless until when while yield ;
do
echo $i;
ruby -e "puts self.$i.methods.length";
done
BEGIN
-e:1:in `<main>': undefined method `BEGIN' for main:Object (NoMethodError)
END
-e:1:in `<main>': undefined method `END' for main:Object (NoMethodError)
__ENCODING__
-e:1:in `<main>': undefined method `__ENCODING__' for main:Object (NoMethodError)
__END__
-e:1:in `<main>': undefined method `__END__' for main:Object (NoMethodError)
__FILE__
-e:1:in `<main>': undefined method `__FILE__' for main:Object (NoMethodError)
__LINE__
-e:1:in `<main>': undefined method `__LINE__' for main:Object (NoMethodError)
alias
-e:1:in `<main>': undefined method `alias' for main:Object (NoMethodError)
and
-e:1:in `<main>': undefined method `and' for main:Object (NoMethodError)
begin
-e:1:in `<main>': undefined method `begin' for main:Object (NoMethodError)
break
-e:1:in `<main>': undefined method `break' for main:Object (NoMethodError)
case
-e:1:in `<main>': undefined method `case' for main:Object (NoMethodError)
class
95
def
-e:1:in `<main>': undefined method `def' for main:Object (NoMethodError)
defined?
-e:1:in `<main>': undefined method `defined?' for main:Object (NoMethodError)
do
-e:1:in `<main>': undefined method `do' for main:Object (NoMethodError)
else
-e:1:in `<main>': undefined method `else' for main:Object (NoMethodError)
elsif
-e:1:in `<main>': undefined method `elsif' for main:Object (NoMethodError)
end
-e:1:in `<main>': undefined method `end' for main:Object (NoMethodError)
ensure
-e:1:in `<main>': undefined method `ensure' for main:Object (NoMethodError)
false
-e:1:in `<main>': undefined method `false' for main:Object (NoMethodError)
for
-e:1:in `<main>': undefined method `for' for main:Object (NoMethodError)
if
-e:1:in `<main>': undefined method `if' for main:Object (NoMethodError)
in
-e:1:in `<main>': undefined method `in' for main:Object (NoMethodError)
module
-e:1:in `<main>': undefined method `module' for main:Object (NoMethodError)
next
-e:1:in `<main>': undefined method `next' for main:Object (NoMethodError)
nil
-e:1:in `<main>': undefined method `nil' for main:Object (NoMethodError)
not
-e:1:in `<main>': undefined method `not' for main:Object (NoMethodError)
or
-e:1:in `<main>': undefined method `or' for main:Object (NoMethodError)
redo
-e:1:in `<main>': undefined method `redo' for main:Object (NoMethodError)
rescue
-e:1:in `<main>': undefined method `rescue' for main:Object (NoMethodError)
retry
-e:1:in `<main>': undefined method `retry' for main:Object (NoMethodError)
return
-e:1:in `<main>': undefined method `return' for main:Object (NoMethodError)
self
-e:1:in `<main>': undefined method `self' for main:Object (NoMethodError)
super
-e:1:in `<main>': undefined method `super' for main:Object (NoMethodError)
then
-e:1:in `<main>': undefined method `then' for main:Object (NoMethodError)
true
-e:1:in `<main>': undefined method `true' for main:Object (NoMethodError)
undef
-e:1:in `<main>': undefined method `undef' for main:Object (NoMethodError)
unless
-e:1:in `<main>': undefined method `unless' for main:Object (NoMethodError)
until
-e:1:in `<main>': undefined method `until' for main:Object (NoMethodError)
when
-e:1:in `<main>': undefined method `when' for main:Object (NoMethodError)
while
-e:1:in `<main>': undefined method `while' for main:Object (NoMethodError)
yield
-e:1:in `<main>': undefined method `yield' for main:Object (NoMethodError)