def self.new(name, *args, &b) BTagID_TBL.mutex.synchronize{ return BTagID_TBL[name] if BTagID_TBL[name] } super(name, *args, &b) end def initialize(name, *args, &b) @id = name BTagID_TBL.mutex.synchronize{ BTagID_TBL[@id] = self } bind(*args, &b) if args != [] end
# File tk/lib/tk/bindtag.rb, line 116 def self.new(name, *args, &b) BTagID_TBL.mutex.synchronize{ if BTagID_TBL[name] BTagID_TBL[name] else BTagID_TBL[name] = self.allocate.instance_eval{ initialize(name, *args, &b) self } end } end