module ExtendIt::Dsl

Public Class Methods

extended(base) click to toggle source
# File lib/extend_it/dsl.rb, line 16
def self.extended(base)
  base.extend(ClassMethods)
  base.define_singleton_method :dsl_obj do
    dsl.new(self)
  end
end
included(base) click to toggle source
# File lib/extend_it/dsl.rb, line 7
def self.included(base)
  base.extend(ClassMethods)
  base.class_eval do
    define_method :dsl_obj do
      self.class.dsl.new(self)
    end
  end
end

Protected Class Methods

expand_asterisk(arr, keys) click to toggle source
# File lib/extend_it/dsl.rb, line 189
def self.expand_asterisk(arr, keys)
  return arr unless arr.include?(:*)
  arr.map { |a| a == :* ? keys - arr : a }.flatten
end

Public Instance Methods

dsl_eval(&block) click to toggle source
# File lib/extend_it/dsl.rb, line 23
def dsl_eval(&block)
  dsl_obj.instance_eval(&block) if block_given?
end