ActionCache

sbt.util.ActionCache
object ActionCache

Attributes

Graph
Supertypes
class Object
trait Matchable
class Any
Self type

Members list

Type members

Classlikes

Represents a value and output files, used internally by the macro.

Represents a value and output files, used internally by the macro.

Attributes

Companion
object
Supertypes
class Object
trait Matchable
class Any

Attributes

Companion
class
Supertypes
class Object
trait Matchable
class Any
Self type

Value members

Concrete methods

inline def actionResult[A1](inline value: A1): InternalActionResult[A1]
def cache[I : HashWriter, O : ClassTag](key: I, codeContentHash: Digest, extraHash: Digest, tags: List[CacheLevelTag], config: BuildWideCacheConfiguration)(action: I => InternalActionResult[O]): O

This is a key function that drives remote caching. This is intended to be called from the cached task macro for the most part.

This is a key function that drives remote caching. This is intended to be called from the cached task macro for the most part.

  • key: This represents the input key for this action, typically consists of all the input into the action. For the purpose of caching, all we need from the input is to generate some hash value.
  • codeContentHash: This hash represents the Scala code of the task. Even if the input tasks are the same, the code part needs to be tracked.
  • extraHash: Reserved for later, which we might use to invalidate the cache.
  • tags: Tags to track cache level.
  • config: The configuration that's used to store where the cache backends are.
  • action: The actual action to be cached.

Attributes

def exists[I : HashWriter](key: I, codeContentHash: Digest, extraHash: Digest, config: BuildWideCacheConfiguration): Boolean

Checks if the ActionResult exists in the cache.

Checks if the ActionResult exists in the cache.

Attributes

def get[I : HashWriter, O : ClassTag](key: I, codeContentHash: Digest, extraHash: Digest, tags: List[CacheLevelTag], config: BuildWideCacheConfiguration): Option[O]

Retrieves the cached value.

Retrieves the cached value.

Attributes

def manifestFromFile(manifest: Path): Manifest
def packageDirectory(dir: VirtualFileRef, conv: FileConverter, outputDirectory: Path): VirtualFile