diff options
author | Mario <mario@mariovavti.com> | 2024-02-10 22:04:24 +0000 |
---|---|---|
committer | Mario <mario@mariovavti.com> | 2024-02-10 22:04:24 +0000 |
commit | 7ccb2a261521cc826ff41d91cebbab504b7c4e11 (patch) | |
tree | 043d03fbad8f58352c75ae7e3fb6ae942edb64e9 /vendor/scssphp/scssphp/src/Util/Path.php | |
parent | 067a66b9278e3c8ff2c624f38f2817715eb8a316 (diff) | |
download | volse-hubzilla-7ccb2a261521cc826ff41d91cebbab504b7c4e11.tar.gz volse-hubzilla-7ccb2a261521cc826ff41d91cebbab504b7c4e11.tar.bz2 volse-hubzilla-7ccb2a261521cc826ff41d91cebbab504b7c4e11.zip |
custom sass bootstrap builds for channels and site
Diffstat (limited to 'vendor/scssphp/scssphp/src/Util/Path.php')
-rw-r--r-- | vendor/scssphp/scssphp/src/Util/Path.php | 77 |
1 files changed, 77 insertions, 0 deletions
diff --git a/vendor/scssphp/scssphp/src/Util/Path.php b/vendor/scssphp/scssphp/src/Util/Path.php new file mode 100644 index 000000000..f399e41ab --- /dev/null +++ b/vendor/scssphp/scssphp/src/Util/Path.php @@ -0,0 +1,77 @@ +<?php + +namespace ScssPhp\ScssPhp\Util; + +/** + * @internal + */ +class Path +{ + /** + * @param string $path + * + * @return bool + */ + public static function isAbsolute($path) + { + if ($path === '') { + return false; + } + + if ($path[0] === '/') { + return true; + } + + if (\DIRECTORY_SEPARATOR !== '\\') { + return false; + } + + if ($path[0] === '\\') { + return true; + } + + if (\strlen($path) < 3) { + return false; + } + + if ($path[1] !== ':') { + return false; + } + + if ($path[2] !== '/' && $path[2] !== '\\') { + return false; + } + + if (!preg_match('/^[A-Za-z]$/', $path[0])) { + return false; + } + + return true; + } + + /** + * @param string $part1 + * @param string $part2 + * + * @return string + */ + public static function join($part1, $part2) + { + if ($part1 === '' || self::isAbsolute($part2)) { + return $part2; + } + + if ($part2 === '') { + return $part1; + } + + $last = $part1[\strlen($part1) - 1]; + $separator = \DIRECTORY_SEPARATOR; + + if ($last === '/' || $last === \DIRECTORY_SEPARATOR) { + $separator = ''; + } + + return $part1 . $separator . $part2; + } +} |