u8
, u16
, u32
, u64
i8
, i16
, i32
, i64
f32
, f64
bool
string
.
, e.g. product.field
.[]
, *
, and ?
.[]
?
*
*u32
, [][]string
, ?ProductType
are all correct type specifications.!
operator, optionally followed by an index.nil
.Type1, Type2 -> Result
()
, e.g., string -> ()
-> ()
.That is, this mapping takes no argument and has no return type.Unit
type in Aqua: you cannot assign a non-existing result to a value.u8
in place of u16
or i16
. Or ?bool
in place of []bool
. Or *string
instead of ?string
or []string
. The same holds for products.A: D -> C
is a subtype of A1: D1 -> C1
, if D1
is a subtype of D
and C
is a subtype of C1
.