Class: BBK::App::Factory
- Inherits:
-
Object
- Object
- BBK::App::Factory
- Defined in:
- lib/bbk/app/factory.rb
Instance Attribute Summary collapse
-
#instanceargs ⇒ Object
Returns the value of attribute instanceargs.
-
#instancekwargs ⇒ Object
Returns the value of attribute instancekwargs.
-
#klass ⇒ Object
Returns the value of attribute klass.
Instance Method Summary collapse
- #call(*args, **kwargs) ⇒ Object
- #create ⇒ Object
-
#initialize(klass, *args, **kwargs) ⇒ Factory
constructor
A new instance of Factory.
Constructor Details
#initialize(klass, *args, **kwargs) ⇒ Factory
Returns a new instance of Factory.
9 10 11 12 13 |
# File 'lib/bbk/app/factory.rb', line 9 def initialize(klass, *args, **kwargs) @klass = klass @instanceargs = args @instancekwargs = kwargs end |
Instance Attribute Details
#instanceargs ⇒ Object
Returns the value of attribute instanceargs.
7 8 9 |
# File 'lib/bbk/app/factory.rb', line 7 def instanceargs @instanceargs end |
#instancekwargs ⇒ Object
Returns the value of attribute instancekwargs.
7 8 9 |
# File 'lib/bbk/app/factory.rb', line 7 def instancekwargs @instancekwargs end |
#klass ⇒ Object
Returns the value of attribute klass.
7 8 9 |
# File 'lib/bbk/app/factory.rb', line 7 def klass @klass end |
Instance Method Details
#call(*args, **kwargs) ⇒ Object
23 24 25 |
# File 'lib/bbk/app/factory.rb', line 23 def call(*args, **kwargs) create.call(*args, **kwargs) end |
#create ⇒ Object
15 16 17 18 19 20 21 |
# File 'lib/bbk/app/factory.rb', line 15 def create if RUBY_VERSION < '2.7' && instancekwargs.empty? klass.new(*instanceargs) else klass.new(*instanceargs, **instancekwargs) end end |