Skip to content

Reference

This section documents Indago’s public API surface: the interface your code calls, the attributes that control what gets scanned, and the fluent filters that shape selector expressions. Everything here is a stable contract — the runtime package (Indago) is intentionally tiny, and almost all of the work happens in the source generator.

  • IIndagoProvider — the generated entry point, accessed via the static IndagoProvider.Instance singleton. Exposes GetAssemblies, GetTypes, and Scan.
  • ServiceRegistrationAttribute — declaratively mark a type for dependency-injection registration with a chosen lifetime.
  • ExcludeFromIndagoAttribute — opt a type out of scanning so the generator skips it.
  • Type Filters — the fluent selector methods (AddClasses, AsImplementedInterfaces, namespace and attribute filters, and more) used to build a scan.