Module: RakeFactory::Namespaceable

Defined in:
lib/rake_factory/namespaceable.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.prepended(base) ⇒ Object



3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# File 'lib/rake_factory/namespaceable.rb', line 3

def self.prepended(base)
  super(base)
  base.class_eval do
    parameter(:namespace,
        transform: lambda { |name|
          name = name.to_s if name.kind_of?(Symbol)
          name = name.to_str if name.respond_to?(:to_str)
          unless name.kind_of?(String) || name.nil?
            raise ArgumentError,
                "Expected a String or Symbol for a namespace name"
          end
          name
        })
  end
end

Instance Method Details

#around_define(application) ⇒ Object



19
20
21
22
23
24
25
26
27
# File 'lib/rake_factory/namespaceable.rb', line 19

def around_define(application)
  if namespace
    application.in_namespace(namespace) do
      super(application)
    end
  else
    super(application)
  end
end