本文簡要介紹ruby語言中 Binding類
的用法。
Binding
類的對象將執行上下文封裝在代碼中的某個特定位置,並保留此上下文以供將來使用。 self
的變量、方法、值以及可能在此上下文中可以訪問的迭代器塊都被保留。 Binding
對象可以使用 Kernel#binding
創建,並且可用於 Kernel#set_trace_func
的回調和 TracePoint
的實例。
這些綁定對象可以作為 Kernel#eval
方法的第二個參數傳遞,為評估建立環境。
class Demo
def initialize(n)
@secret = n
end
def get_binding
binding
end
end
k1 = Demo.new(99)
b1 = k1.get_binding
k2 = Demo.new(-3)
b2 = k2.get_binding
eval("@secret", b1) #=> 99
eval("@secret", b2) #=> -3
eval("@secret") #=> nil
Binding
對象沒有特定於類的方法。
相關用法
- Ruby Binding.local_variable_defined?用法及代碼示例
- Ruby Binding.local_variable_set用法及代碼示例
- Ruby Binding.local_variables用法及代碼示例
- Ruby Binding.eval用法及代碼示例
- Ruby Binding.irb用法及代碼示例
- Ruby Binding.local_variable_get用法及代碼示例
- Ruby BigMath.cos用法及代碼示例
- Ruby BigDecimal.self >用法及代碼示例
- Ruby BigMath.sin用法及代碼示例
- Ruby BigDecimal.self >=用法及代碼示例
- Ruby BigDecimal.floor用法及代碼示例
- Ruby BigDecimal.to_s用法及代碼示例
- Ruby BigDecimal.to_d用法及代碼示例
- Ruby BigDecimal.save_rounding_mode用法及代碼示例
- Ruby BigDecimal modulo用法及代碼示例
- Ruby BigDecimal infinite?用法及代碼示例
- Ruby BigDecimal.to_digits用法及代碼示例
- Ruby BigDecimal.add用法及代碼示例
- Ruby BigDecimal.save_exception_mode用法及代碼示例
- Ruby BigDecimal to_f()用法及代碼示例
- Ruby BigDecimal to_r()用法及代碼示例
- Ruby BigDecimal exponent用法及代碼示例
- Ruby BigDecimal.ceil用法及代碼示例
- Ruby BigDecimal log()用法及代碼示例
- Ruby BigDecimal sub()用法及代碼示例
注:本文由純淨天空篩選整理自ruby-lang.org大神的英文原創作品 Binding類。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。