Table of Contents

Interface ICodeBase

Namespace
NDepend.CodeModel
Assembly
NDepend.API.dll

Represents a code base snapshot, produced by a NDepend analysis. A ICodeBase object can be obtained from the IAnalysisResult.CodeBase property.

public interface ICodeBase : ICodeBaseView, ICodeElementParent, ICodeContainer, IUser, ICodeElement, IUsed
Inherited Members
Extension Methods

Properties (6)

AnalysisResultFilePath

Get the file path of the analysis result that contains this code base.

IAbsoluteFilePath AnalysisResultFilePath { get; }

Property Value

IAbsoluteFilePath

Application

Gets a ICodeBaseView object restrained only to application assemblies and code elements declared in application assemblies, excluding test code.

ICodeBaseView Application { get; }

Property Value

ICodeBaseView

Remarks

A code element is either in Application, TestCode or ThirdParty, these three views are disjoint. This view is empty when only test assemblies are analyzed.

See Also

ApplicationAndTestCode

Gets a ICodeBaseView object that is the union of Application and TestCode: all assemblies and code elements that are not third-party.

ICodeBaseView ApplicationAndTestCode { get; }

Property Value

ICodeBaseView
See Also

SourceFiles

Get the list of source files of the application.

IReadOnlyCollection<ISourceFile> SourceFiles { get; }

Property Value

IReadOnlyCollection<ISourceFile>

TestCode

Gets a ICodeBaseView object restrained only to test assemblies and code elements declared in test assemblies, for which IsTestCode is true.

ICodeBaseView TestCode { get; }

Property Value

ICodeBaseView

Remarks

A test assembly is an application assembly that references a test framework assembly (xUnit, NUnit, MSTest, TUnit...). A code element is either in Application, TestCode or ThirdParty, these three views are disjoint. The JustMyCode view never contains test code.

See Also

ThirdParty

Gets a ICodeBaseView object restrained only to third-party assemblies and code elements declared in third-party assemblies and used by application assemblies.

ICodeBaseView ThirdParty { get; }

Property Value

ICodeBaseView