Package-level declarations

Collections/data structures.

Types

Link copied to clipboard

Mutable multimap implementation mapping paths to values of type T. Extends PathMultimap with operations to mutate the multimap.

Link copied to clipboard
interface PathMultimap<out T>

Multimap implementation mapping paths to values of type T.

Link copied to clipboard
interface PathMultimapEntry<out T>

An entry of the path multimap with values of type T.

Link copied to clipboard

Identifier of an entry in a path multimap.

Link copied to clipboard
class PathTrie<T>(initialCapacity: Int = 100) : MutablePathMultimap<T>

Implementation of a mutable path multimap as a trie. Held values are of type T.

Link copied to clipboard
data class PathTrieEntry<T>(val path: AbsolutePath, val value: T, val id: PathMultimapEntryId) : PathMultimapEntry<T>

Entry in a path trie holding values of type T.

Functions

Link copied to clipboard

Returns a new mutable path multimap given a list of pairs where the first value is the path and the second is the value.

Link copied to clipboard
fun <T> pathMultimapOf(vararg pairs: Pair<PathOrString, T>): PathMultimap<T>

Returns a new read-only path multimap given a list of pairs where the first value is the path and the second is the value.

Link copied to clipboard
operator fun <T> MutablePathMultimap<T>.set(path: String, value: T): PathMultimapEntryId
operator fun <T> MutablePathMultimap<T>.set(path: Path, value: T): PathMultimapEntryId

Inserts a new entry in the multimap with the given path and value and returns an identifier that identifies the inserted entry in the multimap.

Link copied to clipboard

Transforms the multimap into a mapping of paths to lists of values associated with them.