Struct ScyllaModuleDependencyIssue
An immutable, read-only description of one problem in the module dependency graph, produced by CheckDependencies(List<ScyllaModuleDependencyIssue>).
Inherited Members
Namespace: Scylla.Core.Modules
Assembly: ScyllaCore.dll
Syntax
public readonly struct ScyllaModuleDependencyIssue
Remarks
Each issue names the module that declared the offending dependency, the dependency it points at, and a ready-to-display Message. Issues are pure data: producing one neither logs anything nor changes module state, which is what makes CheckDependencies(List<ScyllaModuleDependencyIssue>) safe to call at any point in the framework lifecycle.
Use IsFatal to separate problems that prevent the framework from running from those that are worth reporting but harmless.
Constructors
ScyllaModuleDependencyIssue(string, string, ScyllaModuleDependencyIssueType, string)
Initializes a new ScyllaModuleDependencyIssue describing one problem found in the module dependency graph.
Declaration
public ScyllaModuleDependencyIssue(string moduleID, string dependencyID, ScyllaModuleDependencyIssueType issueType, string message)
Parameters
| Type | Name | Description |
|---|---|---|
| string | moduleID | The ID of the module that declared the dependency the issue concerns. |
| string | dependencyID | The ID of the depended-upon module. For a cycle this is the module on the other end of the edge that closes the loop. |
| ScyllaModuleDependencyIssueType | issueType | The ScyllaModuleDependencyIssueType classifying the problem. |
| string | message | A complete, human-readable description of the problem, suitable for writing straight to a log or a console without further formatting. |
Properties
DependencyID
Gets the ID of the depended-upon module.
Declaration
public string DependencyID { get; }
Property Value
| Type | Description |
|---|---|
| string | The declared ModuleID. For a missing dependency this module is not in the registry; for a cycle it is the module on the other end of the edge that closes the loop. |
IsFatal
Gets whether this issue prevents the affected module from running.
Declaration
public bool IsFatal { get; }
Property Value
| Type | Description |
|---|---|
| bool |
|
IssueType
Gets the classification of this issue.
Declaration
public ScyllaModuleDependencyIssueType IssueType { get; }
Property Value
| Type | Description |
|---|---|
| ScyllaModuleDependencyIssueType | One of the ScyllaModuleDependencyIssueType values. |
See Also
Message
Gets a complete, human-readable description of the problem.
Declaration
public string Message { get; }
Property Value
| Type | Description |
|---|---|
| string | A message suitable for writing straight to a log or an in-game console without further formatting. |
ModuleID
Gets the ID of the module that declared the dependency this issue concerns.
Declaration
public string ModuleID { get; }
Property Value
| Type | Description |
|---|---|
| string | A module ID matching a ID in the registry. |
Methods
ToString()
Returns the human-readable Message describing this issue.
Declaration
public override string ToString()
Returns
| Type | Description |
|---|---|
| string | The issue message. |