package me.eater.hefbrug.dsl import java.nio.file.Paths sealed class Location { data class File(override val path: String) : Location() { override val directory: String get() = java.io.File(path).parent.toString() } object Memory : Location() { override val path: String = "-" override val directory = System.getProperty("user.dir") ?: "-" } abstract val path: String abstract val directory: String fun resolve(file: String) = Paths.get(directory, file).toAbsolutePath().toString() }