Class: SuperDiff::OperationalSequencers::Array

Inherits:
Base
  • Object
show all
Defined in:
lib/super_diff/operational_sequencers/array.rb

Defined Under Namespace

Classes: LcsCallbacks

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Base

call

Constructor Details

#initialize(*args) ⇒ Array

Returns a new instance of Array.



8
9
10
11
12
13
14
15
16
17
# File 'lib/super_diff/operational_sequencers/array.rb', line 8

def initialize(*args)
  super(*args)

  @lcs_callbacks = LcsCallbacks.new(
    expected: expected,
    actual: actual,
    extra_operational_sequencer_classes: extra_operational_sequencer_classes,
    extra_diff_formatter_classes: extra_diff_formatter_classes,
  )
end

Class Method Details

.applies_to?(value) ⇒ Boolean

Returns:

  • (Boolean)


4
5
6
# File 'lib/super_diff/operational_sequencers/array.rb', line 4

def self.applies_to?(value)
  value.is_a?(::Array)
end

Instance Method Details

#callObject



19
20
21
22
# File 'lib/super_diff/operational_sequencers/array.rb', line 19

def call
  Diff::LCS.traverse_balanced(expected, actual, lcs_callbacks)
  lcs_callbacks.operations
end