# module Camping::CampTools

### Public Class Methods

descape() click to toggle source

A Regex to descape escaped characters. used to correct URLs that are escpaed using Rack Util’s escape function.

    # File lib/camping/tools.rb, line 34
    def descape
      /\\(.)/
    end

normalize_slashes(string) click to toggle source

Normalize Slashes normalizes the leading and trailing slashes of a string to only have a single trailing slash and no leading slashes.

    # File lib/camping/tools.rb, line 22
    def normalize_slashes(string)
      f = string.dup
      return "" if f == "" # Short circuit for blank prefixes.
      f.chop!until f[-1] != "/"
      f.slice!(0)until f[0] != "/"
      f << "/"
    end

Also aliased as: norms
norms(string)
Alias for: normalize_slashes
to_snake(string) click to toggle source

`to_snake` Accepts a string and snake Cases it. Also accepts symbols and coerces them into a string.

    # File lib/camping/tools.rb, line 10
    def to_snake(string)
      string = string.to_s if string.class == Symbol
      string.gsub(/::/, '/').
      gsub(/([A-Z]+)([A-Z][a-z])/,'\1_\2').
      gsub(/([a-z\d])([A-Z])/,'\1_\2').
      tr("-", "_").
      downcase
    end