Upsilon/Upsilon/Binder/BoundStatements/BoundExpressionStatement.cs

24 lines
792 B
C#

using System.Collections.Generic;
using Upsilon.Text;
namespace Upsilon.Binder
{
public class BoundExpressionStatement : BoundStatement
{
public BoundExpression Expression { get; }
public override BoundKind Kind => BoundKind.BoundExpressionStatement;
public override IEnumerable<BoundNode> GetNodeAtPosition(int characterPosition)
{
if (characterPosition >= Span.Start && characterPosition <= Span.End)
foreach (var boundNode in Expression.GetNodeAtPosition(characterPosition))
yield return boundNode;
yield return this;
}
public BoundExpressionStatement(BoundExpression expression, TextSpan span):base(span)
{
Expression = expression;
}
}
}