original_string: public static function delimit($string, $delimiter = '_')
      {
          $cacheKey = __FUNCTION__ . $delimiter;
  
          $result = static::_cache($cacheKey, $string);
  
          if ($result === false) {
              $result = mb_strtolower(preg_replace('/(?<=\\w)([A-Z])/', $delimiter . '\\1', $string));
              static::_cache($cacheKey, $string, $result);
          }
  
          return $result;
      }
code: public static function delimit($string, $delimiter = '_')
      {
          $cacheKey = __FUNCTION__ . $delimiter;
  
          $result = static::_cache($cacheKey, $string);
  
          if ($result === false) {
              $result = mb_strtolower(preg_replace('/(?<=\\w)([A-Z])/', $delimiter . '\\1', $string));
              static::_cache($cacheKey, $string, $result);
          }
  
          return $result;
      }
code_tokens: public static function delimit ( $ string , $ delimiter = '_' ) { $ cacheKey = __FUNCTION__ . $ delimiter ; $ result = static :: _cache ( $ cacheKey , $ string ) ; if ( $ result === false ) { $ result = mb_strtolower ( preg_replace ( '/(?<=\\w)([A-Z])/' , $ delimiter . '\\1' , $ string ) ) ; static :: _cache ( $ cacheKey , $ string , $ result ) ; } return $ result ; }
docstring: Expects a CamelCasedInputString, and produces a lower_case_delimited_string
  
  @param string $string String to delimit
  @param string $delimiter the character to use as a delimiter
  @return string delimited string
docstring_tokens: Expects a CamelCasedInputString and produces a lower_case_delimited_string