< Summary

Information
Class: NexusLabs.Needlr.Generators.Models.InterfaceInfo
Assembly: NexusLabs.Needlr.Generators
File(s): /home/runner/work/needlr/needlr/src/NexusLabs.Needlr.Generators/Models/InterfaceInfo.cs
Line coverage
100%
Covered lines: 8
Uncovered lines: 0
Coverable lines: 8
Total lines: 20
Line coverage: 100%
Branch coverage
50%
Covered branches: 1
Total branches: 2
Branch coverage: 50%
Method coverage

Feature is only available for sponsors

Upgrade to PRO version

Metrics

MethodBranch coverage Crap Score Cyclomatic complexity Line coverage
.ctor(...)100%11100%
get_FullName()100%11100%
get_SourceFilePath()100%11100%
get_SourceLine()100%11100%
get_HasLocation()50%22100%

File(s)

/home/runner/work/needlr/needlr/src/NexusLabs.Needlr.Generators/Models/InterfaceInfo.cs

#LineLine coverage
 1namespace NexusLabs.Needlr.Generators.Models;
 2
 3/// <summary>
 4/// Information about an interface implemented by a service, including its source location.
 5/// </summary>
 6internal readonly struct InterfaceInfo
 7{
 8    public InterfaceInfo(string fullName, string? sourceFilePath = null, int sourceLine = 0)
 9    {
 25310        FullName = fullName;
 25311        SourceFilePath = sourceFilePath;
 25312        SourceLine = sourceLine;
 25313    }
 14
 27115    public string FullName { get; }
 27116    public string? SourceFilePath { get; }
 27117    public int SourceLine { get; }
 18
 919    public bool HasLocation => SourceFilePath != null && SourceLine > 0;
 20}