ZIO Cache

ZIO Cache

  • Overview
  • Use Cases
  • API
  • About

›Overview

Overview

  • Summary
  • Lookup
  • Cache
  • Cache Statistics
  • Entry Statistics

Lookup

A Lookup is a lookup function that, given a key of type Key, knows how to compute a value of type Value, requiring an environment of type Environment and potentially failing with an error of type Error.

import zio._

trait Lookup[-Key, -Environment, +Error, +Value] {
  def lookup(key: Key): ZIO[Environment, Error, Value]
}

You can think of a key as essentially an effectual function to compute a value. And in fact you can construct a Lookup from any effectual function using the apply method on Lookup.

object Lookup {

  def apply[Key, Environment, Error, Value](
    f: Key => ZIO[Environment, Error, Value]
  ): Lookup[Key, Environment, Error, Value] =
    ???
}

Since the lookup function can return a ZIO effect it can either return its result synchronously or asynchronously. It can also use an environment and potentially fail with an error.

In short, if you can describe it with a ZIO effect you can use it as the lookup function for a cache.

← SummaryCache →
ZIO Cache
GitHub
Star
Chat with us on Discord
discord
Additional resources
Scaladoc of zio-cache
Copyright © 2022 ZIO Maintainers