Sha256: 6c7f764838827093c073afeff618e1935173c89b70772357af84bc36a065a89a

Contents?: true

Size: 868 Bytes

Versions: 2

Compression:

Stored size: 868 Bytes

Contents

require "forwardable"
require "trailblazer/activity/dsl/linear"
require "trailblazer/operation" # TODO: remove this dependency

require "trailblazer/macro/model"
require "trailblazer/macro/policy"
require "trailblazer/macro/guard"
require "trailblazer/macro/pundit"
require "trailblazer/macro/nested"
require "trailblazer/macro/rescue"
require "trailblazer/macro/wrap"

module Trailblazer
  module Macro
  end

  # All macros sit in the {Trailblazer::Macro} namespace, where we forward calls from
  # operations and activities to.

  module Activity::DSL::Linear::Helper
    Constants::Policy = Trailblazer::Macro::Policy

    # Extending the {Linear::Helper} namespace is the canonical way to import
    # macros into Railway, FastTrack, Operation, etc.
    extend Forwardable
    def_delegators Trailblazer::Macro, :Model, :Nested, :Wrap, :Rescue
  end # Helper
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
trailblazer-macro-2.1.11 lib/trailblazer/macro.rb
trailblazer-macro-2.1.10.beta1 lib/trailblazer/macro.rb