41 lines
1.4 KiB
C#
41 lines
1.4 KiB
C#
using System.Diagnostics;
|
|
using Microsoft.CodeAnalysis.Text;
|
|
|
|
namespace Microsoft.CodeAnalysis.CSharp;
|
|
|
|
internal sealed class BoundSequencePointWithSpan : BoundStatement
|
|
{
|
|
public BoundStatement? StatementOpt { get; }
|
|
|
|
public TextSpan Span { get; }
|
|
|
|
public BoundSequencePointWithSpan(SyntaxNode syntax, BoundStatement? statementOpt, TextSpan span, bool hasErrors = false)
|
|
: base(BoundKind.SequencePointWithSpan, syntax, hasErrors || statementOpt.HasErrors())
|
|
{
|
|
//IL_001e: Unknown result type (might be due to invalid IL or missing references)
|
|
//IL_001f: Unknown result type (might be due to invalid IL or missing references)
|
|
StatementOpt = statementOpt;
|
|
Span = span;
|
|
}
|
|
|
|
[DebuggerStepThrough]
|
|
public override BoundNode? Accept(BoundTreeVisitor visitor)
|
|
{
|
|
return visitor.VisitSequencePointWithSpan(this);
|
|
}
|
|
|
|
public BoundSequencePointWithSpan Update(BoundStatement? statementOpt, TextSpan span)
|
|
{
|
|
//IL_001e: Unknown result type (might be due to invalid IL or missing references)
|
|
//IL_0009: Unknown result type (might be due to invalid IL or missing references)
|
|
//IL_000b: Unknown result type (might be due to invalid IL or missing references)
|
|
if (statementOpt != StatementOpt || span != Span)
|
|
{
|
|
BoundSequencePointWithSpan boundSequencePointWithSpan = new BoundSequencePointWithSpan(Syntax, statementOpt, span, base.HasErrors);
|
|
boundSequencePointWithSpan.CopyAttributes(this);
|
|
return boundSequencePointWithSpan;
|
|
}
|
|
return this;
|
|
}
|
|
}
|