コード例 #1
0
        static bool IsValueTerminator(ExpresionMode mode, ITokenStream stream)
        {
            switch (stream.Current.Type)
            {
            case TokenType.EndOfFile:
            case TokenType.Bang:
            case TokenType.Semicolon:
            case TokenType.CloseCurlyBrace:
            case TokenType.OpenCurlyBrace:
                return(true);
            }

            if (mode == ExpresionMode.Argument)
            {
                return(stream.Current.Type == TokenType.Comma || stream.Current.Type == TokenType.CloseFunctionBrace);
            }

            return(false);
        }
コード例 #2
0
 public VariableDefinition(ExpresionMode mode = ExpresionMode.None)
 {
     Mode = mode;
     Values = new ParseItemList();
 }
コード例 #3
0
 public VariableDefinition(ExpresionMode mode = ExpresionMode.None)
 {
     Mode   = mode;
     Values = new ParseItemList();
 }
コード例 #4
0
        static bool IsValueTerminator(ExpresionMode mode, ITokenStream stream)
        {
            switch (stream.Current.Type)
            {
                case TokenType.EndOfFile:
                case TokenType.Bang:
                case TokenType.Semicolon:
                case TokenType.CloseCurlyBrace:
                case TokenType.OpenCurlyBrace:
                    return true;
            }

            if (mode == ExpresionMode.Argument)
                return stream.Current.Type == TokenType.Comma || stream.Current.Type == TokenType.CloseFunctionBrace;

            return false;
        }