Beispiel #1
0
 public ErlangListComprehensionGeneratorSyntax(ErlangExpressionSyntax expression, ErlangLessMinusToken arrow, ErlangExpressionSyntax function, ErlangCommaToken comma)
 {
     Expression = expression;
     Arrow      = arrow;
     Function   = function;
     Comma      = comma;
 }
Beispiel #2
0
        internal static ErlangListComprehensionGeneratorSyntax Parse(TokenBuffer buffer, ParseStyle style)
        {
            var start      = buffer.Offset;
            var expression = ParseExpression(buffer, style);

            if (expression != null)
            {
                var next = buffer.Peek();
                if (ErlangToken.IsLeftArrow(next))
                {
                    buffer.Advance();
                    var arrow    = (ErlangLessMinusToken)next;
                    var function = ParseExpression(buffer, style);
                    if (function != null)
                    {
                        ErlangCommaToken comma = null;
                        next = buffer.Peek();
                        if (ErlangToken.IsComma(next))
                        {
                            buffer.Advance();
                            comma = (ErlangCommaToken)next;
                        }

                        return(new ErlangListComprehensionGeneratorSyntax(expression, arrow, function, comma));
                    }
                }
            }

            buffer.SetOffset(start);
            return(null);
        }
Beispiel #3
0
        internal static ErlangListComprehensionFilterSyntax Parse(TokenBuffer buffer, ParseStyle style)
        {
            var expression = ParseExpression(buffer, style);

            if (expression != null)
            {
                ErlangCommaToken comma = null;
                var next = buffer.Peek();
                if (ErlangToken.IsComma(next))
                {
                    buffer.Advance();
                    comma = (ErlangCommaToken)next;
                }

                return(new ErlangListComprehensionFilterSyntax(expression, comma));
            }

            return(null);
        }
Beispiel #4
0
 public ErlangListComprehensionFilterSyntax(ErlangExpressionSyntax expression, ErlangCommaToken comma)
 {
     Expression = expression;
     Comma      = comma;
 }
Beispiel #5
0
 public ErlangNonEmptyListOfTypeSyntax(ErlangLeftBracketToken left, ErlangTypeSyntax type, ErlangCommaToken comma, ErlangDotDotDotToken dotDotDot, ErlangRightBracketToken right)
     : base(left, type, right)
 {
     Comma     = comma;
     DotDotDot = dotDotDot;
 }