module Littlestitious

Public Class Methods

included(base) click to toggle source
# File lib/littlestitious.rb, line 4
def self.included(base)

  base.instance_eval do
    extend(ClassMethods)

    initialize_littlestitious_vars(base)
  end

end

Public Instance Methods

boring?() click to toggle source
# File lib/littlestitious.rb, line 183
def boring?
  # Matches ascii character 10 and 32 to 126
  # (newline + space + all visible)
  regex_string = '[^\n -~]'.freeze

  @boring_regex ||= Regexp.new regex_string

  @boring_regex.match(self).nil?
end
count_strange()
count_strange_characters()
count_strange_chars()
includes_non_printing_characters?() click to toggle source
# File lib/littlestitious.rb, line 173
def includes_non_printing_characters?
  return false if self.boring?

  self.class.non_printing_chars.each do | char_type, char |
    return true if self.include? char
  end

  false
end
includes_weird_spaces?() click to toggle source
# File lib/littlestitious.rb, line 163
def includes_weird_spaces?
  return false if self.boring?

  self.class.weird_space_chars.each do | char_type, char |
    return true if self.include? char
  end

  false
end
includes_zero_width_characters?() click to toggle source
# File lib/littlestitious.rb, line 153
def includes_zero_width_characters?
  return false if self.boring?

  self.class.zero_width_chars.each do | char_type, char |
    return true if self.include? char
  end

  false
end
strange_char_count()
strange_character_count() click to toggle source
# File lib/littlestitious.rb, line 193
def strange_character_count

  char_count = Hash.new(0)

  return char_count if self.boring?

  self.each_char do |char|
    char_type = self.class.char_lookup[char]
    next unless char_type
    char_count[char_type] += 1
  end

  char_count

end
strange_count()