Ruta graveolens  ·  notes from a language experiment  ·  cultivated since 2025

E0300: Interface not found

CodeCategoryStability
E0300SemanticPermanent

Explanation

A conformance assertion, refinement, or comptime parameter bound names an interface that cannot be resolved. Interface declarations follow ordinary module naming and visibility rules.

Likely cause

The interface name is misspelled, its module has not been imported, or the declaration is private. Declare the interface or use its accessible module-qualified name.

Examples

Unknown interface

Requires --preview interfaces.

struct Value is Missing {}
fn main() {}

Declare the interface

Requires --preview interfaces.

interface Marker { fn mark(borrow self); }
struct Value is Marker { fn mark(borrow self) {} }
fn main() {}

References