CxInspectionFlags

Description

[Flags]
enum Tinman.Core.Cx.Inspections.CxInspectionFlags

Enumeration of flags that describe the consequences of a failed inspection.

The ordinal of the combination of inspection flags is a bitmask of the following structure:

  16   12              0
   |    |              |
0000 0000 0000 0000 0000
          \____________/
     \__/  Identifier (12 bits)
\__/  Target (4 bits)
 Severity (4 bits)

where Severity is one of MaskSeverity, Target is one of MaskTarget and Identifier assigns an ordinal number to the inspection. By convention, inspection flags are presented as hexadecimal numbers having five digits and a CX prefix:

CX01234
  ||\_/
  || Identifier
  |\_ Target
  \___ Severity

This scheme allows to make an educated quick guess about the problem at hand when encountering an inspection failure, without having to look up the documentation first.

Public / Constants

SeverityCritical

public constant SeverityCritical → (0:int32)

Errors will occur when running the code generator or when compiling the generated code ( CX0…​..).

SeverityError

public constant SeverityError → (65536:int32)

Errors will occur at runtime when the generated code is being executed (CX1…​.).

SeverityWarning

public constant SeverityWarning → (131072:int32)

There is a potential problem that might cause errors at runtime (CX2…​.).

SeverityNotice

public constant SeverityNotice → (196608:int32)

There is an opportunity for improving a specific construct in the code (CX3…​.).

TargetCpp

public constant TargetCpp → (4096:int32)

The inspection targets code generation for C++ source code (CX.1…​).

TargetCs

public constant TargetCs → (8192:int32)

The inspection targets code generation for C# source code (CX.2…​).

TargetHlsl

public constant TargetHlsl → (12288:int32)

The inspection targets code generation for HLSL source code (CX.3…​).

TargetGlsl

public constant TargetGlsl → (16384:int32)

The inspection targets code generation for GLSL source code (CX.4…​).

TargetAdoc

public constant TargetAdoc → (61440:int32)

The inspection targets code generation for Asciidoc source code (CX.F…​).

Identifier

public constant Identifier → (1:int32)

The smallest identifier value (CX..001).

MaskSeverity

public constant MaskSeverity → (983040:int32)

Bitmask for the inspection severity.

MaskTarget

public constant MaskTarget → (61440:int32)

Bitmask for the inspection target.

If the bitmask is empty, then the inspection has no specific target.

MaskIdentifier

public constant MaskIdentifier → (4095:int32)

Bitmask for the unique identifier.

All

public constant All → (1048575:int32)

All flags.