Skip to main content

Built-in Types

FFS comes with many built-in primitive types.

Integers

Integers can either be signed (allowing negative numbers) or unsigned (disallowing negative numbers). Every integer type indicates its size in bits with the suffix - an i32 is 32 bits, or 4 bytes.

Signed

  • i8
  • i16
  • i32
  • i64

Unsigned

  • u8
  • u16
  • u32
  • u64

Floating-point

An approximation of real numbers using hardware floating point. Float types indicate their size in bits with the suffix - an f32 is 32 bits, or 4 bytes.

  • f32
  • f64

Bool

The bool type is either true or false.

String

The string type represents a piece of text. Internally, all strings store their data as UTF-8.

Unit

unit represents nothing, and is used for functions that don't return a value. Has a size of 0 bytes.