// The catalog is a deterministic scale fixture used by examples, tests, and
// throughput measurements. It is not counted as core algorithmic logic.

///|
pub fn production_catalog() -> Array[Token] {
  let result : Array[Token] = []
  result.append(catalog_color())
  result.append(catalog_font_size())
  result.append(catalog_spacing())
  result.append(catalog_radius())
  result.append(catalog_shadow())
  result
}

///|
pub fn catalog_size() -> Int {
  production_catalog().length()
}

///|
pub fn catalog_by_kind(kind : TokenKind) -> Array[Token] {
  tokens_of_kind(production_catalog(), kind)
}