View Source API Reference cinema v0.1.0

Modules

Cinema

Cinema is a simple Elixir framework for managing incremental materialized views entirely in Elixir/Ecto.

The Cinema.Engine module provides a behaviour for defining engines which can execute projections defined using the Cinema.Projection module.

The Cinema.Engine.Task module provides a simple implementation of the Cinema.Engine behaviour which uses the Task module to execute projections.

This module is responsible to defining "projections", which are similar to "views" built into most RDBMS systems.

The Elixir.Cinema.Projection.Lens module provides a struct for defining lenses which can be used to manipulate the inputs to a given projection.

This module is responsible for ranking a list of projections in a depth-first manner, which can be used to determine the order in which to execute a list of projections, potentially asynchronously.