Module: Contracts

Included in:
ClassMethods
Defined in:
lib/contracts.rb

Defined Under Namespace

Modules: ClassMethods Classes: AnnotatedMethod, Base, Error, Expects, Nothrows, Returns, Runtime

Class Method Summary collapse

Class Method Details

.consume_current_contractsObject



42
43
44
45
46
# File 'lib/contracts.rb', line 42

def self.consume_current_contracts
  r = Thread.current[:current_contracts]
  Thread.current[:current_contracts] = nil
  r
end

.current_contractsObject



38
39
40
# File 'lib/contracts.rb', line 38

def self.current_contracts
  Thread.current[:current_contracts] ||= []
end

.included(klass) ⇒ Object



48
49
50
# File 'lib/contracts.rb', line 48

def self.included(klass)
  klass.extend ClassMethods
end