Sha256: 3bcd6217da65154b0a34fdf0ece0953b21a29d1ba59904168fdd15c8096bfb0e

Contents?: true

Size: 769 Bytes

Versions: 33

Compression:

Stored size: 769 Bytes

Contents

# frozen_string_literal: true

require 'eac_ruby_utils/core_ext'
require 'eac_cli/runner/context_responders/base'

module EacCli
  module Runner
    module ContextResponders
      class Parent < ::EacCli::Runner::ContextResponders::Base
        def callable?
          parent.if_present(false) do |v|
            next true if v.respond_to?(method_name)

            v.if_respond(:runner_context, false) { |w| w.parent_respond_to?(method_name) }
          end
        end

        def call(*args, &block)
          return parent.runner_context.call(method_name, *args, &block) if
            parent.respond_to?(:runner_context)

          raise "Parent #{parent} do not respond to .context or .runner_context (Runner: #{runner})"
        end
      end
    end
  end
end

Version data entries

33 entries across 33 versions & 2 rubygems

Version Path
eac_cli-0.42.0 lib/eac_cli/runner/context_responders/parent.rb
eac_cli-0.40.1 lib/eac_cli/runner/context_responders/parent.rb
eac_cli-0.40.0 lib/eac_cli/runner/context_responders/parent.rb
eac_cli-0.39.0 lib/eac_cli/runner/context_responders/parent.rb
eac_cli-0.38.1 lib/eac_cli/runner/context_responders/parent.rb
eac_tools-0.82.0 sub/eac_cli/lib/eac_cli/runner/context_responders/parent.rb
eac_tools-0.81.0 sub/eac_cli/lib/eac_cli/runner/context_responders/parent.rb
eac_tools-0.80.0 sub/eac_cli/lib/eac_cli/runner/context_responders/parent.rb
eac_tools-0.79.0 sub/eac_cli/lib/eac_cli/runner/context_responders/parent.rb
eac_tools-0.78.0 sub/eac_cli/lib/eac_cli/runner/context_responders/parent.rb
eac_tools-0.77.1 sub/eac_cli/lib/eac_cli/runner/context_responders/parent.rb
eac_tools-0.77.0 sub/eac_cli/lib/eac_cli/runner/context_responders/parent.rb
eac_cli-0.38.0 lib/eac_cli/runner/context_responders/parent.rb
eac_tools-0.76.1 sub/eac_cli/lib/eac_cli/runner/context_responders/parent.rb
eac_tools-0.76.0 sub/eac_cli/lib/eac_cli/runner/context_responders/parent.rb
eac_tools-0.75.2 sub/eac_cli/lib/eac_cli/runner/context_responders/parent.rb
eac_cli-0.37.0 lib/eac_cli/runner/context_responders/parent.rb
eac_tools-0.75.1 sub/eac_cli/lib/eac_cli/runner/context_responders/parent.rb
eac_tools-0.75.0 sub/eac_cli/lib/eac_cli/runner/context_responders/parent.rb
eac_tools-0.74.1 sub/eac_cli/lib/eac_cli/runner/context_responders/parent.rb