module ApiDef::Support::AttrUno

Public Class Methods

attr_uno(*names) click to toggle source

Create method name with +name(value)+ for setter and name for getter

# File lib/api_def/support/attr_uno.rb, line 8
      def self.attr_uno(*names)
        names.flatten.each do |name|
          self.class_eval <<-EOF
          def #{name}(value = nil)
            if value
              @#{name} = value
            else
              @#{name}
            end
          end
          EOF
        end
      end
included(mod) click to toggle source
# File lib/api_def/support/attr_uno.rb, line 3
  def self.included(mod)

    mod.class_eval do

      # Create method +name+ with +name(value)+ for setter and +name+ for getter
      def self.attr_uno(*names)
        names.flatten.each do |name|
          self.class_eval <<-EOF
          def #{name}(value = nil)
            if value
              @#{name} = value
            else
              @#{name}
            end
          end
          EOF
        end
      end

    end

  end