Class: Dbsketch::Comparison::FunctionComparator

Inherits:
Object
  • Object
show all
Defined in:
lib/dbsketch/comparison/function_comparator.rb

Instance Method Summary collapse

Instance Method Details

#are_equivalent?(old_function, new_function) ⇒ Boolean

Returns:

  • (Boolean)

Raises:

  • (ArgumentError)


34
35
36
37
38
39
40
41
42
43
# File 'lib/dbsketch/comparison/function_comparator.rb', line 34

def are_equivalent? old_function, new_function
	### Preconditions
	raise ArgumentError, "old_function is not a Dbsketch::Model::Function" unless nil == old_function or old_function.is_a? Dbsketch::Model::Function
	raise ArgumentError, "new_function is not a Dbsketch::Model::Function" unless nil == new_function or new_function.is_a? Dbsketch::Model::Function
	###
	(nil != old_function and nil != new_function) and
		old_function.arguments == new_function.arguments and
		old_function.returns == new_function.returns and
		old_function.algo == new_function.algo
end

#compare(old_function, new_function) ⇒ Object

Raises:

  • (ArgumentError)


45
46
47
48
49
50
51
# File 'lib/dbsketch/comparison/function_comparator.rb', line 45

def compare old_function, new_function
	### Preconditions
	raise ArgumentError, "old_function is not a Dbsketch::Model::Function" unless nil == old_function or old_function.is_a? Dbsketch::Model::Function
	raise ArgumentError, "new_function is not a Dbsketch::Model::Function" unless nil == new_function or new_function.is_a? Dbsketch::Model::Function
	###
	FunctionDiff.new(old_function, new_function) if not are_equivalent? old_function, new_function
end