class Mongoid::Kms::Rot13

inline Rot13 gem, as seen in github.com/jrobertson/rot13/blob/012c9c37d767a364f793db00890dee82d9a65732/lib/rot13.rb so we don't add unnecessary dependencies

Public Class Methods

rotate(s,deg=13) click to toggle source
# File lib/mongoid/kms/mock.rb, line 19
def self.rotate(s,deg=13)
  a = ('a'..'z').map.with_index{|x,i| [x.chr,i] }

  r = s.split(//).map do |x|
    item = a.assoc(x.downcase)
    c = item ? a.rotate(deg)[item.last].first : x
    x == x.downcase ? c : c.upcase
  end
  r.join
end