Open sandboxFocus

Interface IInitializable

Marks a type as having a post-initialization hook. The Initialize(InitializationContext) method is called after all constructors and object/collection initializers have completed, ensuring that all properties (including init-only and required members) are set before validation or derived value computation runs.

Namespace: Metalama.Framework.RunTime.Initialization
Assembly: Metalama.Framework.dll
Syntax
public interface IInitializable
Remarks

The Metalama Linker automatically rewrites call sites (new T(), new T { ... }, with { ... }) to invoke WithInitialize<T>(T, InitializationMetadata?) after construction.

Implementing classes should declare Initialize(InitializationContext) as public virtual (or override) on non-sealed classes to allow derived types to extend initialization behavior.

Methods

Name Description
Initialize(InitializationContext)

Called after all constructors and object/collection initializers have completed.

Extension Methods