1*37748cd8SNickeau<?php 2*37748cd8SNickeau 3*37748cd8SNickeaudeclare(strict_types=1); 4*37748cd8SNickeau 5*37748cd8SNickeaunamespace Antlr\Antlr4\Runtime\Utils; 6*37748cd8SNickeau 7*37748cd8SNickeaufinal class StringUtils 8*37748cd8SNickeau{ 9*37748cd8SNickeau private const ENCODING = 'UTF-8'; 10*37748cd8SNickeau 11*37748cd8SNickeau private function __construct() 12*37748cd8SNickeau { 13*37748cd8SNickeau } 14*37748cd8SNickeau 15*37748cd8SNickeau public static function escapeWhitespace(string $string, bool $escapeSpaces = false) : string 16*37748cd8SNickeau { 17*37748cd8SNickeau if ($string === '') { 18*37748cd8SNickeau return $string; 19*37748cd8SNickeau } 20*37748cd8SNickeau 21*37748cd8SNickeau $string = \str_replace(["\n", "\r", "\t"], ['\n', '\r', '\t'], $string); 22*37748cd8SNickeau 23*37748cd8SNickeau if ($escapeSpaces) { 24*37748cd8SNickeau $string = \preg_replace('/ /', "\u00B7", $string); 25*37748cd8SNickeau } 26*37748cd8SNickeau 27*37748cd8SNickeau return $string ?? ''; 28*37748cd8SNickeau } 29*37748cd8SNickeau 30*37748cd8SNickeau public static function char(int $code) : string 31*37748cd8SNickeau { 32*37748cd8SNickeau return \mb_chr($code, self::ENCODING); 33*37748cd8SNickeau } 34*37748cd8SNickeau 35*37748cd8SNickeau public static function codePoint(string $code) : int 36*37748cd8SNickeau { 37*37748cd8SNickeau return \mb_ord($code, self::ENCODING); 38*37748cd8SNickeau } 39*37748cd8SNickeau} 40