Module: Trailblazer::Macro::Policy::Guard

Defined in:
lib/trailblazer/macro/guard.rb

Class Method Summary collapse

Class Method Details

.build(callable) ⇒ Object



8
9
10
11
12
13
14
# File 'lib/trailblazer/macro/guard.rb', line 8

def self.build(callable)
  option = Trailblazer::Option(callable)

  ->((ctx, *), **circuit_args) do
    Trailblazer::Operation::Result.new(!!option.call(ctx, keyword_arguments: ctx.to_hash, **circuit_args), {})
  end
end