module AttrMethods

Public Class Methods

included(base) click to toggle source
# File lib/private_attrs/attr_methods.rb, line 2
def self.included(base)
  base.class_eval do
    def self.private_attr_reader(*args)
      args.each do |arg|
        method_name = arg.to_sym
        attr_reader method_name
        private method_name
      end
    end

    def self.private_attr_writer(*args)
      args.each do |arg|
        method_name = arg.to_sym
        attr_writer method_name
        private "#{method_name}="
      end
    end

    def self.private_attr_accessor(*args)
      args.each do |arg|
        method_name = arg.to_sym
        attr_accessor method_name
        private method_name
        private "#{method_name}="
      end
    end

    def self.protected_attr_reader(*args)
      args.each do |arg|
        method_name = arg.to_sym
        attr_reader method_name
        protected method_name
      end
    end

    def self.protected_attr_writer(*args)
      args.each do |arg|
        method_name = arg.to_sym
        attr_writer method_name
        protected "#{method_name}="
      end
    end

    def self.protected_attr_accessor(*args)
      args.each do |arg|
        method_name = arg.to_sym
        attr_accessor method_name
        protected method_name
        protected "#{method_name}="
      end
    end
  end
end
private_attr_accessor(*args) click to toggle source
# File lib/private_attrs/attr_methods.rb, line 20
def self.private_attr_accessor(*args)
  args.each do |arg|
    method_name = arg.to_sym
    attr_accessor method_name
    private method_name
    private "#{method_name}="
  end
end
private_attr_reader(*args) click to toggle source
# File lib/private_attrs/attr_methods.rb, line 4
def self.private_attr_reader(*args)
  args.each do |arg|
    method_name = arg.to_sym
    attr_reader method_name
    private method_name
  end
end
private_attr_writer(*args) click to toggle source
# File lib/private_attrs/attr_methods.rb, line 12
def self.private_attr_writer(*args)
  args.each do |arg|
    method_name = arg.to_sym
    attr_writer method_name
    private "#{method_name}="
  end
end
protected_attr_accessor(*args) click to toggle source
# File lib/private_attrs/attr_methods.rb, line 45
def self.protected_attr_accessor(*args)
  args.each do |arg|
    method_name = arg.to_sym
    attr_accessor method_name
    protected method_name
    protected "#{method_name}="
  end
end
protected_attr_reader(*args) click to toggle source
# File lib/private_attrs/attr_methods.rb, line 29
def self.protected_attr_reader(*args)
  args.each do |arg|
    method_name = arg.to_sym
    attr_reader method_name
    protected method_name
  end
end
protected_attr_writer(*args) click to toggle source
# File lib/private_attrs/attr_methods.rb, line 37
def self.protected_attr_writer(*args)
  args.each do |arg|
    method_name = arg.to_sym
    attr_writer method_name
    protected "#{method_name}="
  end
end