Upsilon/Upsilon/Parser/ExpressionSyntax/UnaryExpressionSyntax.cs

26 lines
726 B
C#

using System.Collections.Generic;
using Upsilon.Text;
namespace Upsilon.Parser
{
public class UnaryExpressionSyntax : ExpressionSyntax
{
public UnaryExpressionSyntax(SyntaxToken @operator, ExpressionSyntax expression)
{
Operator = @operator;
Expression = expression;
Span = TextSpan.Between(Operator.Span, expression.Span);
}
public override SyntaxKind Kind => SyntaxKind.UnaryExpression;
public SyntaxToken Operator { get; }
public ExpressionSyntax Expression { get; }
public override IEnumerable<SyntaxNode> ChildNodes()
{
yield return Operator;
yield return Expression;
}
}
}