Ancestry.Daisy.Language.DaisyParser.ParsePredicate C# (CSharp) Method

ParsePredicate() private method

private ParsePredicate ( ) : IDaisyAstNode
return IDaisyAstNode
        private IDaisyAstNode ParsePredicate()
        {
            if(IsOn(TokenKind.EOL) && LookAhead(1,TokenKind.StartGroup)) //Anonymous group
            {
                MoveNextGuaranteed();
                return ParseGroup(null);
            }
            var statement =  ParseStatement();
            if(IsOn(TokenKind.EOL) && LookAhead(1,TokenKind.StartGroup)) //Named group
            {
                MoveNextGuaranteed();
                return ParseGroup(statement);
            }
            AssertHasType(TokenKind.EOL);
            tokenStream.MoveNext();
            return statement;
        }