Skip to main content
Module

std/path/_is_absolute.ts

Deno standard library
Go to Latest
File
// Copyright 2018-2023 the Deno authors. All rights reserved. MIT license.// This module is browser compatible.
import { CHAR_COLON } from "./_constants.ts";import { assertPath, isPathSeparator, isPosixPathSeparator, isWindowsDeviceRoot,} from "./_util.ts";
/** * Verifies whether provided path is absolute * @param path to be verified as absolute */export function windowsIsAbsolute(path: string): boolean { assertPath(path);
const len = path.length; if (len === 0) return false;
const code = path.charCodeAt(0); if (isPathSeparator(code)) { return true; } else if (isWindowsDeviceRoot(code)) { // Possible device root
if (len > 2 && path.charCodeAt(1) === CHAR_COLON) { if (isPathSeparator(path.charCodeAt(2))) return true; } } return false;}
/** * Verifies whether provided path is absolute * @param path to be verified as absolute */export function posixIsAbsolute(path: string): boolean { assertPath(path); return path.length > 0 && isPosixPathSeparator(path.charCodeAt(0));}