Skip to content

Commit

Permalink
refactoring
Browse files Browse the repository at this point in the history
  • Loading branch information
0xF6 committed Jul 7, 2024
1 parent b64d227 commit 4d629c7
Showing 1 changed file with 27 additions and 29 deletions.
56 changes: 27 additions & 29 deletions lib/ast/syntax/ast/VariableDeclarationSyntax.cs
Original file line number Diff line number Diff line change
@@ -1,42 +1,40 @@
namespace vein.syntax
{
using System.Collections.Generic;
using System.Linq;
using Sprache;

public class QualifiedExpressionStatement : StatementSyntax, IPositionAware<QualifiedExpressionStatement>
{
public readonly ExpressionSyntax Value;
namespace vein.syntax;

public QualifiedExpressionStatement(ExpressionSyntax exp) => Value = exp;
using System.Collections.Generic;
using System.Linq;
using Sprache;

public new QualifiedExpressionStatement SetPos(Position startPos, int length)
{
base.SetPos(startPos, length);
return this;
}
public class QualifiedExpressionStatement(ExpressionSyntax exp)
: StatementSyntax, IPositionAware<QualifiedExpressionStatement>
{
public readonly ExpressionSyntax Value = exp;

public override string ExpressionString => Value.ExpressionString;
public new QualifiedExpressionStatement SetPos(Position startPos, int length)
{
base.SetPos(startPos, length);
return this;
}

public class VariableDeclarationSyntax : StatementSyntax, IPositionAware<VariableDeclarationSyntax>
{
public override SyntaxType Kind => SyntaxType.VariableDeclaration;
public override string ExpressionString => Value.ExpressionString;
}

public override IEnumerable<BaseSyntax> ChildNodes =>
GetNodes(Type).Concat(new[] { Variable }).Where(n => n != null);
public class VariableDeclarationSyntax : StatementSyntax, IPositionAware<VariableDeclarationSyntax>
{
public override SyntaxType Kind => SyntaxType.VariableDeclaration;

public TypeExpression Type { get; set; }
public override IEnumerable<BaseSyntax> ChildNodes =>
GetNodes(Type).Concat(new[] { Variable }).Where(n => n != null);

public IdentifierExpression Variable { get; set; }
public TypeExpression Type { get; set; }

public ExpressionSyntax ExpressionValue { get; set; }
public IdentifierExpression Variable { get; set; }

public ExpressionSyntax ExpressionValue { get; set; }

public new VariableDeclarationSyntax SetPos(Position startPos, int length)
{
base.SetPos(startPos, length);
return this;
}

public new VariableDeclarationSyntax SetPos(Position startPos, int length)
{
base.SetPos(startPos, length);
return this;
}
}

0 comments on commit 4d629c7

Please sign in to comment.