Module: RedisMemo::Util
- Defined in:
- lib/redis_memo/util.rb
Class Method Summary collapse
- .checksum(serialized) ⇒ Object
- .deep_sort_hash(orig_hash) ⇒ Object
- .tagify_parameterized_sql(sql) ⇒ Object
- .uuid ⇒ Object
Class Method Details
.checksum(serialized) ⇒ Object
4 5 6 |
# File 'lib/redis_memo/util.rb', line 4 def self.checksum(serialized) Digest::SHA1.base64digest(serialized) end |
.deep_sort_hash(orig_hash) ⇒ Object
8 9 10 11 12 13 14 |
# File 'lib/redis_memo/util.rb', line 8 def self.deep_sort_hash(orig_hash) {}.tap do |new_hash| orig_hash.sort.each do |k, v| new_hash[k] = v.is_a?(Hash) ? deep_sort_hash(v) : v end end end |
.tagify_parameterized_sql(sql) ⇒ Object
16 17 18 19 20 |
# File 'lib/redis_memo/util.rb', line 16 def self.tagify_parameterized_sql(sql) # replace $1 with ?, # and (?, ?, ? ...) with (?) sql.gsub(/(\$\d+)/, '?').gsub(/((, *)*\?)+/, '?') end |
.uuid ⇒ Object
22 23 24 |
# File 'lib/redis_memo/util.rb', line 22 def self.uuid SecureRandom.uuid end |