Skip to content

Namespace

Every UDL file must have a namespace block:

namespace math {
  double exp(double a);
};

It serves multiple purposes: - It identifies the name of the generated Rust scaffolding file <namespace>.uniffi.rs. - It identifies the package name of the generated foreign-language bindings (e.g. uniffi.<namespace> in Kotlin) - It also contains all top-level functions that get exposed to foreign-language bindings.