fp_library/
brands.rs

1//! Higher-kinded representations of [types][crate::types].
2//!
3//! Brands represent higher-kinded (unapplied/partially-applied) forms of
4//! [types][crate::types], as opposed to concrete types, which are
5//! fully-applied.
6//!
7//! For example, [`VecBrand`] represents the higher-kinded type `Vec`, whereas
8//! `Vec A`/`Vec<A>` is the concrete type where `Vec` has been applied to some
9//! generic type `A`.
10
11pub use crate::types::{
12	arc_fn::ArcFnBrand,
13	endofunction::EndofunctionBrand,
14	endomorphism::EndomorphismBrand,
15	identity::IdentityBrand,
16	option::OptionBrand,
17	pair::{PairBrand, PairWithFirstBrand, PairWithSecondBrand},
18	rc_fn::RcFnBrand,
19	result::{ResultBrand, ResultWithErrBrand, ResultWithOkBrand},
20	vec::VecBrand,
21};