Bloccs.Manifest.Effects (bloccs v0.2.0)

Copy Markdown View Source

Declared effect capabilities.

Each axis is either nil (not allowed at all) or a typed declaration:

  • http%{allow: [host], methods: [method]}
  • db%{allow: [scope_string]} where scope is "table:action"
  • time"wall_clock" | "none"

  • random"none" | "crypto" | "pseudo"

Summary

Functions

Returns the list of effect axes that are actively declared.

Types

db()

@type db() :: %{allow: [String.t()]} | nil

http()

@type http() :: %{allow: [String.t()], methods: [String.t()]} | nil

random()

@type random() :: String.t() | nil

t()

@type t() :: %Bloccs.Manifest.Effects{
  db: db(),
  http: http(),
  random: random(),
  time: time()
}

time()

@type time() :: String.t() | nil

Functions

declared(e)

@spec declared(t()) :: [:http | :db | :time | :random]

Returns the list of effect axes that are actively declared.