Sha256: 47ff8ea80fa0bf63dc0a84d589d53a76f8d6c9556ada115d0857668bb24eadd0

Contents?: true

Size: 920 Bytes

Versions: 21

Compression:

Stored size: 920 Bytes

Contents

# frozen_string_literal: true

module Gem::Molinillo
  class DependencyGraph
    # An action that modifies a {DependencyGraph} that is reversible.
    # @abstract
    class Action
      # rubocop:disable Lint/UnusedMethodArgument

      # @return [Symbol] The name of the action.
      def self.action_name
        raise 'Abstract'
      end

      # Performs the action on the given graph.
      # @param  [DependencyGraph] graph the graph to perform the action on.
      # @return [Void]
      def up(graph)
        raise 'Abstract'
      end

      # Reverses the action on the given graph.
      # @param  [DependencyGraph] graph the graph to reverse the action on.
      # @return [Void]
      def down(graph)
        raise 'Abstract'
      end

      # @return [Action,Nil] The previous action
      attr_accessor :previous

      # @return [Action,Nil] The next action
      attr_accessor :next
    end
  end
end

Version data entries

21 entries across 21 versions & 1 rubygems

Version Path
rubygems-update-3.6.3 lib/rubygems/vendor/molinillo/lib/molinillo/dependency_graph/action.rb
rubygems-update-3.6.2 lib/rubygems/vendor/molinillo/lib/molinillo/dependency_graph/action.rb
rubygems-update-3.6.1 lib/rubygems/vendor/molinillo/lib/molinillo/dependency_graph/action.rb
rubygems-update-3.6.0 lib/rubygems/vendor/molinillo/lib/molinillo/dependency_graph/action.rb
rubygems-update-3.5.23 lib/rubygems/vendor/molinillo/lib/molinillo/dependency_graph/action.rb
rubygems-update-3.5.22 lib/rubygems/vendor/molinillo/lib/molinillo/dependency_graph/action.rb
rubygems-update-3.5.21 lib/rubygems/vendor/molinillo/lib/molinillo/dependency_graph/action.rb
rubygems-update-3.5.20 lib/rubygems/vendor/molinillo/lib/molinillo/dependency_graph/action.rb
rubygems-update-3.5.19 lib/rubygems/vendor/molinillo/lib/molinillo/dependency_graph/action.rb
rubygems-update-3.5.18 lib/rubygems/vendor/molinillo/lib/molinillo/dependency_graph/action.rb
rubygems-update-3.5.17 lib/rubygems/vendor/molinillo/lib/molinillo/dependency_graph/action.rb
rubygems-update-3.5.16 lib/rubygems/vendor/molinillo/lib/molinillo/dependency_graph/action.rb
rubygems-update-3.5.15 lib/rubygems/vendor/molinillo/lib/molinillo/dependency_graph/action.rb
rubygems-update-3.5.14 lib/rubygems/vendor/molinillo/lib/molinillo/dependency_graph/action.rb
rubygems-update-3.5.13 lib/rubygems/vendor/molinillo/lib/molinillo/dependency_graph/action.rb
rubygems-update-3.5.12 lib/rubygems/vendor/molinillo/lib/molinillo/dependency_graph/action.rb
rubygems-update-3.5.10 lib/rubygems/vendor/molinillo/lib/molinillo/dependency_graph/action.rb
rubygems-update-3.5.9 lib/rubygems/vendor/molinillo/lib/molinillo/dependency_graph/action.rb
rubygems-update-3.5.8 lib/rubygems/vendor/molinillo/lib/molinillo/dependency_graph/action.rb
rubygems-update-3.5.7 lib/rubygems/vendor/molinillo/lib/molinillo/dependency_graph/action.rb