2017-05-07 12:04:49 +00:00
|
|
|
module BindingSpecs
|
|
|
|
class Demo
|
|
|
|
def initialize(n)
|
|
|
|
@secret = n
|
|
|
|
end
|
|
|
|
|
|
|
|
def square(n)
|
|
|
|
n * n
|
|
|
|
end
|
|
|
|
|
|
|
|
def get_binding_and_line
|
|
|
|
a = true
|
|
|
|
[binding, __LINE__]
|
|
|
|
end
|
|
|
|
|
|
|
|
def get_binding
|
|
|
|
get_binding_and_line[0]
|
|
|
|
end
|
|
|
|
|
|
|
|
def get_line_of_binding
|
|
|
|
get_binding_and_line[1]
|
|
|
|
end
|
|
|
|
|
|
|
|
def get_file_of_binding
|
|
|
|
__FILE__
|
|
|
|
end
|
|
|
|
|
2018-08-03 16:19:40 +00:00
|
|
|
def get_binding_with_send_and_line
|
|
|
|
[send(:binding), __LINE__]
|
|
|
|
end
|
|
|
|
|
|
|
|
def get_binding_and_method
|
|
|
|
[binding, :get_binding_and_method]
|
|
|
|
end
|
|
|
|
|
|
|
|
def get_binding_with_send_and_method
|
|
|
|
[send(:binding), :get_binding_with_send_and_method]
|
|
|
|
end
|
|
|
|
|
2017-05-07 12:04:49 +00:00
|
|
|
def get_empty_binding
|
|
|
|
binding
|
|
|
|
end
|
2017-05-14 14:09:56 +00:00
|
|
|
|
|
|
|
def get_binding_in_block
|
|
|
|
a = true
|
|
|
|
1.times do
|
|
|
|
b = false
|
|
|
|
return binding
|
|
|
|
end
|
|
|
|
end
|
2017-05-07 12:04:49 +00:00
|
|
|
end
|
|
|
|
end
|