ServiceCatalogEntry
NexusLabs.Needlr¶
NexusLabs.Needlr.Catalog¶
ServiceCatalogEntry Class¶
Represents a service registration discovered at compile time.
public sealed record ServiceCatalogEntry : System.IEquatable<NexusLabs.Needlr.Catalog.ServiceCatalogEntry>
Inheritance System.Object 🡒 ServiceCatalogEntry
Implements System.IEquatable<ServiceCatalogEntry>
Constructors¶
ServiceCatalogEntry(string, string, string, ServiceCatalogLifetime, IReadOnlyList<string>, IReadOnlyList<ConstructorParameterEntry>, IReadOnlyList<string>, string, int, IReadOnlyList<InterfaceEntry>) Constructor¶
Represents a service registration discovered at compile time.
public ServiceCatalogEntry(string TypeName, string ShortTypeName, string AssemblyName, NexusLabs.Needlr.Catalog.ServiceCatalogLifetime Lifetime, System.Collections.Generic.IReadOnlyList<string> Interfaces, System.Collections.Generic.IReadOnlyList<NexusLabs.Needlr.Catalog.ConstructorParameterEntry> ConstructorParameters, System.Collections.Generic.IReadOnlyList<string> ServiceKeys, string? SourceFilePath=null, int SourceLine=0, System.Collections.Generic.IReadOnlyList<NexusLabs.Needlr.Catalog.InterfaceEntry>? InterfaceEntries=null);
Parameters¶
TypeName System.String
The fully qualified name of the implementation type.
ShortTypeName System.String
The short name of the implementation type (without namespace).
AssemblyName System.String
The assembly name where this type is defined.
Lifetime ServiceCatalogLifetime
The service lifetime (Singleton, Scoped, Transient).
Interfaces System.Collections.Generic.IReadOnlyList<System.String>
The interfaces this type is registered as.
ConstructorParameters System.Collections.Generic.IReadOnlyList<ConstructorParameterEntry>
Constructor parameter type names.
ServiceKeys System.Collections.Generic.IReadOnlyList<System.String>
Service keys if registered as keyed service.
SourceFilePath System.String
Source file path where the type is defined, if available.
SourceLine System.Int32
1-based line number where the type is defined, or 0 if unknown.
InterfaceEntries System.Collections.Generic.IReadOnlyList<InterfaceEntry>
Detailed interface information including source locations.
Properties¶
ServiceCatalogEntry.AssemblyName Property¶
The assembly name where this type is defined.
Property Value¶
ServiceCatalogEntry.ConstructorParameters Property¶
Constructor parameter type names.
public System.Collections.Generic.IReadOnlyList<NexusLabs.Needlr.Catalog.ConstructorParameterEntry> ConstructorParameters { get; init; }
Property Value¶
System.Collections.Generic.IReadOnlyList<ConstructorParameterEntry>
ServiceCatalogEntry.InterfaceEntries Property¶
Detailed interface information including source locations.
public System.Collections.Generic.IReadOnlyList<NexusLabs.Needlr.Catalog.InterfaceEntry>? InterfaceEntries { get; init; }
Property Value¶
System.Collections.Generic.IReadOnlyList<InterfaceEntry>
ServiceCatalogEntry.Interfaces Property¶
The interfaces this type is registered as.
Property Value¶
System.Collections.Generic.IReadOnlyList<System.String>
ServiceCatalogEntry.Lifetime Property¶
The service lifetime (Singleton, Scoped, Transient).
Property Value¶
ServiceCatalogEntry.ServiceKeys Property¶
Service keys if registered as keyed service.
Property Value¶
System.Collections.Generic.IReadOnlyList<System.String>
ServiceCatalogEntry.ShortTypeName Property¶
The short name of the implementation type (without namespace).
Property Value¶
ServiceCatalogEntry.SourceFilePath Property¶
Source file path where the type is defined, if available.
Property Value¶
ServiceCatalogEntry.SourceLine Property¶
1-based line number where the type is defined, or 0 if unknown.
Property Value¶
ServiceCatalogEntry.TypeName Property¶
The fully qualified name of the implementation type.