From ce306c8f23d64a90e30a95938eb3ceb315230055 Mon Sep 17 00:00:00 2001 From: imkiva Date: Wed, 1 Dec 2021 09:17:22 +0800 Subject: [PATCH] MISC: extract canonicalize Signed-off-by: imkiva --- .../java/org/aya/cli/library/LibraryCompiler.java | 9 ++++----- .../org/aya/cli/library/source/LibrarySource.java | 11 +---------- tools/src/main/java/org/aya/util/FileUtil.java | 8 ++++++++ 3 files changed, 13 insertions(+), 15 deletions(-) diff --git a/cli/src/main/java/org/aya/cli/library/LibraryCompiler.java b/cli/src/main/java/org/aya/cli/library/LibraryCompiler.java index 105b302e3c..438b2315e5 100644 --- a/cli/src/main/java/org/aya/cli/library/LibraryCompiler.java +++ b/cli/src/main/java/org/aya/cli/library/LibraryCompiler.java @@ -32,9 +32,8 @@ * @author kiva */ public class LibraryCompiler { - final @NotNull LibraryOwner owner; - final @NotNull CachedModuleLoader moduleLoader; - + private final @NotNull LibraryOwner owner; + private final @NotNull CachedModuleLoader moduleLoader; private final @NotNull CountingReporter reporter; private final @NotNull CompilerFlags flags; @@ -50,8 +49,8 @@ public static int compile(@NotNull Reporter reporter, @NotNull CompilerFlags fla reporter.reportString("Specified library root does not exist: " + libraryRoot); return 1; } - var config = LibraryConfigData.fromLibraryRoot(LibrarySource.canonicalize(libraryRoot)); - var compiler = new LibraryCompiler(flags, DiskLibraryOwner.from(reporter,config), new LibraryModuleLoader.United()); + var config = LibraryConfigData.fromLibraryRoot(FileUtil.canonicalize(libraryRoot)); + var compiler = new LibraryCompiler(flags, DiskLibraryOwner.from(reporter, config), new LibraryModuleLoader.United()); return compiler.start(); } diff --git a/cli/src/main/java/org/aya/cli/library/source/LibrarySource.java b/cli/src/main/java/org/aya/cli/library/source/LibrarySource.java index 28495e1901..8ce7900729 100644 --- a/cli/src/main/java/org/aya/cli/library/source/LibrarySource.java +++ b/cli/src/main/java/org/aya/cli/library/source/LibrarySource.java @@ -12,7 +12,6 @@ import org.jetbrains.annotations.Debug; import org.jetbrains.annotations.NotNull; -import java.io.IOException; import java.nio.file.Path; import java.util.Objects; import java.util.stream.IntStream; @@ -32,7 +31,7 @@ public record LibrarySource( @NotNull Ref resolveInfo ) { public LibrarySource(@NotNull LibraryOwner owner, @NotNull Path file) { - this(owner, canonicalize(file), DynamicSeq.create(), new Ref<>(), new Ref<>()); + this(owner, FileUtil.canonicalize(file), DynamicSeq.create(), new Ref<>(), new Ref<>()); } public @NotNull ImmutableSeq moduleName() { @@ -63,12 +62,4 @@ public LibrarySource(@NotNull LibraryOwner owner, @NotNull Path file) { @Override public int hashCode() { return Objects.hash(owner.underlyingLibrary(), file); } - - public static @NotNull Path canonicalize(@NotNull Path path) { - try { - return path.toRealPath(); - } catch (IOException ignored) { - return path.toAbsolutePath().normalize(); - } - } } diff --git a/tools/src/main/java/org/aya/util/FileUtil.java b/tools/src/main/java/org/aya/util/FileUtil.java index 1343873ec8..59a67b8e82 100644 --- a/tools/src/main/java/org/aya/util/FileUtil.java +++ b/tools/src/main/java/org/aya/util/FileUtil.java @@ -15,6 +15,14 @@ import java.util.Comparator; public interface FileUtil { + static @NotNull Path canonicalize(@NotNull Path path) { + try { + return path.toRealPath(); + } catch (IOException ignored) { + return path.toAbsolutePath().normalize(); + } + } + static void deleteRecursively(@NotNull Path path) throws IOException { if (!Files.exists(path)) return; try (var walk = Files.walk(path)) {