Sha256: e7dfe26f27d6e2d93338eaf84e0f4772133b87e141df29f7e9218cc400462256
Contents?: true
Size: 1.06 KB
Versions: 2
Compression:
Stored size: 1.06 KB
Contents
module Turnkey class Utility extend Sanitizers #def self.defineProtocols(instance) # return if instance.respondsToSelector("encodeWithCoder:") && instance.respondsToSelector("initWithCoder:") # instance.class.class_eval { # include Turnkey::Proxy # } #end # #def self.extend_protocols_to_object_references(instance) # instance.instance_variables.each do |prop| # value = instance.send(reader_sig_for(prop)) # defineProtocols(value) # end #end def self.defineProtocols(instance) return if alreadyDefined?(instance) includeCoderProtocols(instance) instance.instance_variables.each do |prop| ref = instance.send(reader_sig_for(prop)) defineProtocols(ref) end end private def self.alreadyDefined?(instance) instance.respondsToSelector("encodeWithCoder:") && instance.respondsToSelector("initWithCoder:") end def self.includeCoderProtocols(instance) instance.class.class_eval { include Turnkey::Proxy } end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
turnkey-0.2.2 | lib/turnkey/utility.rb |
turnkey-0.2.1 | ../lib/turnkey/utility.rb |