summaryrefslogtreecommitdiff
path: root/sample/evaldef.rb
blob: 021f65800a3f1e6ffc70bb4bd9824cb01e4cc878 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# method definition by eval()
# output:
#	bar
#	(eval):21: method `baz' not available for "#<foo: 0xbfc5c>"(foo)

class foo
  def foo
    eval("
def baz
  print(\"bar\n\")
end")
  end
end

class bar:foo
  def bar
    baz()
  end
end

f = foo.new
b = bar.new

b.foo
b.bar
f.baz