module ZTK::DSL::Core::ClassMethods

@author Zachary Patten <zpatten AT jovelabs DOT io>

Public Instance Methods

cattr_accessor(*args) click to toggle source
# File lib/ztk/dsl/core.rb, line 49
def cattr_accessor(*args)
  cattr_reader(*args)
  cattr_writer(*args)
end
cattr_reader(*args) click to toggle source
# File lib/ztk/dsl/core.rb, line 54
def cattr_reader(*args)
  args.flatten.each do |arg|
    next if arg.is_a?(Hash)
    instance_eval %Q{
      unless defined?(@@#{arg})
        @@#{arg} = nil
      end

      def #{arg}
        @@#{arg}
      end
    }
  end
end
cattr_writer(*args) click to toggle source
# File lib/ztk/dsl/core.rb, line 69
def cattr_writer(*args)
  args.flatten.each do |arg|
    next if arg.is_a?(Hash)
    instance_eval %Q{
      unless defined?(@@#{arg})
        @@#{arg} = nil
      end

      def #{arg}=(value)
        @@#{arg} = value
      end
    }
  end
end