Module: DesignByContract

Extended by:
DesignByContract
Included in:
DesignByContract
Defined in:
lib/design_by_contract.rb

Defined Under Namespace

Modules: Pattern Classes: Interface, Signature

Instance Method Summary collapse

Instance Method Details

#as_dependency_injection_for(klass, initialize_signature_spec) ⇒ Object



19
20
21
# File 'lib/design_by_contract.rb', line 19

def as_dependency_injection_for(klass, initialize_signature_spec)
  register_contract DesignByContract::Pattern::DependencyInjection.new(klass, initialize_signature_spec)
end

#enable_defensive_contractObject



14
15
16
17
# File 'lib/design_by_contract.rb', line 14

def enable_defensive_contract
  @defensive_contract = true
  fulfill_contracts!
end

#forget_contract_specifications!Object



8
9
10
11
12
# File 'lib/design_by_contract.rb', line 8

def forget_contract_specifications!
  contracts.keys.each(&:down)
  contracts.clear
  nil
end