Module: Polyrun::Coverage::MergeNative

Defined in:
lib/polyrun/coverage/merge_native.rb

Class Method Summary collapse

Class Method Details

.available?Boolean

Returns:

  • (Boolean)


20
21
22
# File 'lib/polyrun/coverage/merge_native.rb', line 20

def available?
  ::Object.const_defined?(:PolyrunCoverageMerge)
end

.line_counts(file_entry) ⇒ Object



32
33
34
# File 'lib/polyrun/coverage/merge_native.rb', line 32

def line_counts(file_entry)
  ::PolyrunCoverageMerge.line_counts(file_entry)
end

.load!Object



6
7
8
9
10
11
12
13
14
15
16
17
18
# File 'lib/polyrun/coverage/merge_native.rb', line 6

def load!
  return true if available?

  extension_dir = File.expand_path("../../../ext/polyrun_coverage_merge", __dir__)
  if File.directory?(extension_dir)
    $LOAD_PATH.unshift(extension_dir) unless $LOAD_PATH.include?(extension_dir)
  end

  require "polyrun_coverage_merge"
  true
rescue LoadError
  false
end

.merge_line_arrays(left, right) ⇒ Object



24
25
26
# File 'lib/polyrun/coverage/merge_native.rb', line 24

def merge_line_arrays(left, right)
  ::PolyrunCoverageMerge.merge_line_arrays(left, right)
end

.merge_two(left, right) ⇒ Object



28
29
30
# File 'lib/polyrun/coverage/merge_native.rb', line 28

def merge_two(left, right)
  ::PolyrunCoverageMerge.merge_two(left, right)
end