Class StatementFactDto
A StatementFact, as it travels.
public record StatementFactDto : IEquatable<StatementFactDto>
- Inheritance
-
StatementFactDto
- Implements
- Inherited Members
Remarks
👉 One record carries every kind of statement: the flags of the kind the statement is are set, and those of every other kind are null.
Constructors
StatementFactDto(SyntaxNodeId, SourceLocation, string, FixedAssignmentSemanticFlags?, WithStatementSemanticFlags?, bool, CaseClauseSemanticFlags?)
A StatementFact, as it travels.
public StatementFactDto(SyntaxNodeId Node, SourceLocation Location, string Statement, FixedAssignmentSemanticFlags? FixedAssignmentFlags, WithStatementSemanticFlags? WithStatementFlags, bool IsValueKnown = true, CaseClauseSemanticFlags? CaseClauseFlags = null)
Parameters
NodeSyntaxNodeIdThe statement.
LocationSourceLocationWhere it is.
StatementstringIts keyword: one of the
Tokens.FixedAssignmentFlagsFixedAssignmentSemanticFlags?What is known about an
LSetor anRSetstatement (FixedAssignmentStatementFact).WithStatementFlagsWithStatementSemanticFlags?What is known about a
Withstatement (WithStatementFact).IsValueKnownboolWhether what the statement works with is known, as opposed to a value its type merely allows; true for a statement whose fact does not depend on it.
CaseClauseFlagsCaseClauseSemanticFlags?What is known about a range clause of a
Case(CaseClauseStatementFact).
Remarks
👉 One record carries every kind of statement: the flags of the kind the statement is are set, and those of every other kind are null.
Properties
CaseClauseFlags
What is known about a range clause of a Case (CaseClauseStatementFact).
public CaseClauseSemanticFlags? CaseClauseFlags { get; init; }
Property Value
FixedAssignmentFlags
What is known about an LSet or an RSet statement (FixedAssignmentStatementFact).
public FixedAssignmentSemanticFlags? FixedAssignmentFlags { get; init; }
Property Value
IsValueKnown
Whether what the statement works with is known, as opposed to a value its type merely allows; true for a statement whose fact does not depend on it.
public bool IsValueKnown { get; init; }
Property Value
Location
Where it is.
public SourceLocation Location { get; init; }
Property Value
Node
The statement.
public SyntaxNodeId Node { get; init; }
Property Value
Statement
Its keyword: one of the Tokens.
public string Statement { get; init; }
Property Value
WithStatementFlags
What is known about a With statement (WithStatementFact).
public WithStatementSemanticFlags? WithStatementFlags { get; init; }
Property Value
Methods
From(StatementFact)
Describes a statement for the wire.
public static StatementFactDto From(StatementFact fact)
Parameters
factStatementFactThe statement.