private SwitchStatementSyntax ParseSwitchStatement(List<AttributeSyntax> attributes)
{
var @switch = Match(SyntaxKind.SwitchKeyword);
var openParen = Match(SyntaxKind.OpenParenToken);
var expression = ParseExpression();
var closeParen = Match(SyntaxKind.CloseParenToken);
var openBrace = Match(SyntaxKind.OpenBraceToken);
var sections = new List<SwitchSectionSyntax>();
while (IsPossibleSwitchSection())
{
var swcase = ParseSwitchSection();
sections.Add(swcase);
}
var closeBrace = Match(SyntaxKind.CloseBraceToken);
return new SwitchStatementSyntax(attributes, @switch, openParen, expression, closeParen, openBrace, sections, closeBrace);
}