Class: Dependencies::Dependency

Inherits:
Expressions::Expression
  • Object
show all
Defined in:
lib/dependencies/dependency.rb

Overview

A Dependency Expression requires LowType in order to be injected via a constructor.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(provider_key: nil, var_name: nil) ⇒ Dependency

Returns a new instance of Dependency.



10
11
12
13
14
15
# File 'lib/dependencies/dependency.rb', line 10

def initialize(provider_key: nil, var_name: nil)
  super()

  @provider_key = provider_key || var_name
  @var_name = var_name
end

Instance Attribute Details

#provider_keyObject (readonly)

Returns the value of attribute provider_key.



8
9
10
# File 'lib/dependencies/dependency.rb', line 8

def provider_key
  @provider_key
end

#var_nameObject (readonly)

Returns the value of attribute var_name.



8
9
10
# File 'lib/dependencies/dependency.rb', line 8

def var_name
  @var_name
end

Instance Method Details

#default_valueObject

Inject dependency via LowType’s default value.



22
23
24
# File 'lib/dependencies/dependency.rb', line 22

def default_value
  Providers[@provider_key]
end

#required?Boolean

Returns:

  • (Boolean)


17
18
19
# File 'lib/dependencies/dependency.rb', line 17

def required?
  false
end

#validate!(value:, proxy:) ⇒ Object

Ignore LowType’s validation on arguments of type Dependency.



27
# File 'lib/dependencies/dependency.rb', line 27

def validate!(value:, proxy:); end