code: def auto_string_formatter(func):
      
      @wraps(func)
      def auto_string_formatter_wrapper(function, *args, **kwargs):
          if isinstance(function, string_types):
              function = StringFormatter(function)
  
          return func(function, *args, **kwargs)
  
      return auto_string_formatter_wrapper
docs: Decorator that handles automatic string formatting.
  
      By converting a string argument to a function that does formatting on said
      string.