Sha256: 6ccfc45fa0c97f9fd40d8fd0e407b1397198a9d8123d7f2b2bf785d7394ec3ca

Contents?: true

Size: 526 Bytes

Versions: 6

Compression:

Stored size: 526 Bytes

Contents

# frozen_string_literal: true

# GroupAction is compose of multiple actions.
class NodeMutation::GroupAction < NodeMutation::Action
  DEFAULT_START = 2**30

  def initialize
    @actions = []
    @type = :group
  end

  def new_code
    nil
  end

  private

  # Calculate the begin and end positions.
  def calculate_position
    @start = DEFAULT_START
    @end = 0
    NodeMutation::Helper.iterate_actions(@actions) do |action|
      @start = [action.start, @start].min
      @end = [action.end, @end].max
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
node_mutation-1.21.6 lib/node_mutation/action/group_action.rb
node_mutation-1.21.5 lib/node_mutation/action/group_action.rb
node_mutation-1.21.4 lib/node_mutation/action/group_action.rb
node_mutation-1.21.3 lib/node_mutation/action/group_action.rb
node_mutation-1.21.2 lib/node_mutation/action/group_action.rb
node_mutation-1.21.1 lib/node_mutation/action/group_action.rb