module Masososo

Constants

SIMILAR_CHAR_SETS
VERSION

Public Class Methods

similar_chars(char, including_self: false, **) click to toggle source
# File lib/masososo.rb, line 11
def similar_chars(char, including_self: false, **)
  raise 'A character instead of a string' if char.size != 1

  if including_self
    @@similar_char_index_including_self[char] || [char]
  else
    @@similar_char_index[char] || [char]
  end
end
similar_string(str, including_self: false, frequency: 0.5, **) click to toggle source
# File lib/masososo.rb, line 21
def similar_string(str, including_self: false, frequency: 0.5, **)
  str.chars.map do |char|
    if rand < frequency
      similar_chars(char, including_self: including_self).sample
    else
      char
    end
  end.join('')
end