2 # Objects of class Binding encapsulate the execution context at some
3 # particular place in the code and retain this context for future use. The
4 # variables, methods, value of self, and possibly an iterator block that can
5 # be accessed in this context are all retained. Binding objects can be created
6 # using Kernel#binding, and are made available to the callback of
7 # Kernel#set_trace_func.
9 # These binding objects can be passed as the second argument of the
10 # Kernel#eval method, establishing an environment for the evaluation.
26 # eval("@secret", b1) #=> 99
27 # eval("@secret", b2) #=> -3
28 # eval("@secret") #=> nil
30 # Binding objects have no class-specific methods.
33 attr_accessor :context
34 attr_accessor :proc_environment