Files
redux-scraper/gems/xdiff-rb/lib/xdiff.rb
2025-01-01 03:29:53 +00:00

29 lines
664 B
Ruby

# typed: true
module XDiff
VERSION = "0.0.1"
def self.validate_arg(method, name, arg)
raise ArgumentError.new("(#{method}) '#{name}' cannot be nil") if arg.nil?
unless arg.is_a?(String)
raise ArgumentError.new(
"(#{method}) '#{name}' must be String (is #{arg.class})"
)
end
end
def self.diff(a, b)
validate_arg("diff", "a", a)
validate_arg("diff", "b", b)
Native.diff(a, b)
end
def self.patch(a, b)
validate_arg("patch", "a", a)
validate_arg("patch", "b", b)
Native.patch(a, b)
end
end
# XDiff::Native methods defined by extension.cc
require "xdiff/extension"
XDiff::Native.init