Class: Array

Inherits:
Object
  • Object
show all
Defined in:
lib/sylfy/utils/reactionkey.rb

Instance Method Summary collapse

Instance Method Details

#_key_cal_chargeObject



32
33
34
35
36
37
# File 'lib/sylfy/utils/reactionkey.rb', line 32

def _key_cal_charge
	charge = [0, 0]
	self[0].each {|e| charge[0] += e.ord - 78}
	self[1].each {|e| charge[1] += e.ord - 78}
	return charge[0] == charge[1] ? "B" : "X"
end

#_key_cal_coefObject



39
40
41
42
43
# File 'lib/sylfy/utils/reactionkey.rb', line 39

def _key_cal_coef
	sum = 0
	self.flatten.each {|e| sum += e}
	return sum.floor >= 26 ? "Z" : (sum.floor + 64).chr
end

#_key_include?(str) ⇒ Boolean

Returns:

  • (Boolean)


45
46
47
48
49
# File 'lib/sylfy/utils/reactionkey.rb', line 45

def _key_include?(str)
	result = false
	self.each {|e| result = true if e.split(/;/)[0] == str.split(/;/)[0]}
	return result
end

#_key_version?Boolean

Returns:

  • (Boolean)


27
28
29
30
# File 'lib/sylfy/utils/reactionkey.rb', line 27

def _key_version?
	array = self.flatten.uniq
	return array.length == 1 ? array[0] : "X"
end

#include_all?(array = []) ⇒ Boolean

Returns:

  • (Boolean)


11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# File 'lib/sylfy/utils/reactionkey.rb', line 11

def include_all?(array = [])
	result = true
	self_array = {}
	self.each {|e| self_array[e.split(/;/)[0]] = e.split(/;/)[1] ? e.split(/;/)[1].to_f : 1.0}
	
	array.each do |item|
		if !self_array.has_key?(item.split(/;/)[0])
			result = false
		else 
			result = false if self_array[item] != item.split(/;/)[1].to_f
		end
	end
	
	return result
end