Module: Flows::Plugin::OutputContract::DSL
- Includes:
- Util::InheritableSingletonVars::DupStrategy.make_module( '@success_contracts' => {}, '@failure_contracts' => {}, '@skip_output_contract_flag' => false )
- Defined in:
- lib/flows/plugin/output_contract/dsl.rb
Overview
DSL for OutputContract plugin.
Constant Summary collapse
- SingletonVarsSetup =
Flows::Util::InheritableSingletonVars::DupStrategy.make_module( '@success_contracts' => {}, '@failure_contracts' => {}, '@skip_output_contract_flag' => false )
Instance Attribute Summary collapse
-
#failure_contracts ⇒ Object
readonly
Hash of contracts for failure results.
-
#skip_output_contract_flag ⇒ Object
readonly
Is contract check and transformation disabled.
-
#success_contracts ⇒ Object
readonly
Hash of contracts for successful results.
Instance Method Summary collapse
-
#failure_with(status, &contract_block) ⇒ Object
Defines a contract for a failure result with specific status.
-
#skip_output_contract(enable: true) ⇒ Object
Disables contract check and transformation for current class and children.
-
#success_with(status, &contract_block) ⇒ Object
Defines a contract for a successful result with specific status.
Instance Attribute Details
#failure_contracts ⇒ Object (readonly)
Hash of contracts for failure results.
10 11 12 |
# File 'lib/flows/plugin/output_contract/dsl.rb', line 10 def failure_contracts @failure_contracts end |
#skip_output_contract_flag ⇒ Object (readonly)
Is contract check and transformation disabled
13 14 15 |
# File 'lib/flows/plugin/output_contract/dsl.rb', line 13 def skip_output_contract_flag @skip_output_contract_flag end |
#success_contracts ⇒ Object (readonly)
Hash of contracts for successful results.
7 8 9 |
# File 'lib/flows/plugin/output_contract/dsl.rb', line 7 def success_contracts @success_contracts end |
Instance Method Details
#failure_with(status, &contract_block) ⇒ Object
Defines a contract for a failure result with specific status.
35 36 37 |
# File 'lib/flows/plugin/output_contract/dsl.rb', line 35 def failure_with(status, &contract_block) failure_contracts[status] = Flows::Contract.make(&contract_block) end |
#skip_output_contract(enable: true) ⇒ Object
Disables contract check and transformation for current class and children.
42 43 44 |
# File 'lib/flows/plugin/output_contract/dsl.rb', line 42 def skip_output_contract(enable: true) @skip_output_contract_flag = enable end |