public static IAbsolutePath Combine(this AbsoluteDirectoryPath basePath, IRelativePath path) { return(path == null ? basePath : path.MatchWith( (RelativeFilePath file) => (IAbsolutePath)basePath.Combine(file), (RelativeDirectoryPath dir) => (IAbsolutePath)basePath.Combine(dir))); }
public static AbsoluteFilePath Combine(this AbsoluteDirectoryPath basePath, RelativeFilePath path) { return(basePath.Combine(path.BasePath).Combine(path.Name)); }
public static AbsoluteDirectoryPath Combine(this AbsoluteDirectoryPath basePath, RelativeDirectoryPath relativePath) { return(relativePath == null ? basePath : basePath.Combine(relativePath.BasePath).Combine(relativePath.Name)); }
public static IAbsolutePath Rebase(this IAbsolutePath path, AbsoluteDirectoryPath from, AbsoluteDirectoryPath onto) { return(onto.Combine(path.RelativeTo(from))); }