pub fn new(unchecked_path: impl Into<String>) -> Result<Self, PathError> {
        let unchecked_path = unchecked_path.into();
        if !Path::new(&unchecked_path).is_absolute() {
            return Err(PathError::NotAbsolute(unchecked_path));
        }
        Ok(AbsoluteSystemPathBuf(unchecked_path.into()))
    }
Create a new AbsoluteSystemPathBuf from `unchecked_path`.
Confirms that `unchecked_path` is absolute. Does *not* convert
to system path, since that is generally undecidable (see module
documentation)

# Arguments

* `unchecked_path`: The path to be validated and converted to an
`AbsoluteSystemPathBuf`.

returns: Result<AbsoluteSystemPathBuf, PathError>

# Examples

```
use std::path::{Path, PathBuf};
use camino::Utf8Path;
use turbopath::AbsoluteSystemPathBuf;
#[cfg(windows)]
let path = "C:/Users/user";
#[cfg(not(windows))]
let path = "/Users/user";

let absolute_path = AbsoluteSystemPathBuf::new(path).unwrap();

#[cfg(windows)]
assert_eq!(absolute_path.as_path(), Utf8Path::new("C:\\Users\\user"));
#[cfg(not(windows))]
assert_eq!(absolute_path.as_path(), Utf8Path::new("/Users/user"));
```
crates/turborepo-paths/src/absolute_system_path_buf.rs