IMPORTANT: To view this page as Markdown, append `.md` to the URL (e.g. /docs/manual/basics.md). For the complete Mojo documentation index, see llms.txt.
Skip to main content
Version: Nightly
For the complete Mojo documentation index, see llms.txt. Markdown versions of all pages are available by appending .md to any URL (e.g. /docs/manual/basics.md).

deinitable

Defines Deinitable, the trait for types with lifetime management through destructors.

This is a Mojo built-in, so you don't need to import it.

comptime values

IsTriviallyDeinitable

comptime IsTriviallyDeinitable[T: AnyType] = conforms_to(T, TrivialRegisterPassable) if conforms_to(T, TrivialRegisterPassable) else T.__del__is_trivial if conforms_to(T, Deinitable) else conforms_to(T, Deinitable)

Indicates whether T is Deinitable with a trivial deinitializer.

A deinitializer is trivial when the compiler generates it and all of T's fields are themselves trivially destructible meaning __deinit__ is a no-op. Evaluates to False for non-Deinitable types.

Parameters

  • T (AnyType): The type to check.

Traits

  • Deinitable: A trait for types that require lifetime management through destructors.