예제 #1
0
        /// <summary>
        /// Binds an In token.
        /// </summary>
        /// <param name="inToken">The In token to bind.</param>
        /// <returns>The bound In token.</returns>
        protected virtual QueryNode BindIn(InToken inToken)
        {
            Func <QueryToken, QueryNode> InBinderMethod = (queryToken) =>
            {
                ExceptionUtils.CheckArgumentNotNull(queryToken, "queryToken");

                if (queryToken.Kind == QueryTokenKind.Literal)
                {
                    return(LiteralBinder.BindInLiteral((LiteralToken)queryToken));
                }

                return(this.Bind(queryToken));
            };

            InBinder inBinder = new InBinder(InBinderMethod);

            return(inBinder.BindInOperator(inToken, this.BindingState));
        }
예제 #2
0
        /// <summary>
        /// Binds an In token.
        /// </summary>
        /// <param name="inToken">The In token to bind.</param>
        /// <returns>The bound In token.</returns>
        protected virtual QueryNode BindIn(InToken inToken)
        {
            InBinder inBinder = new InBinder(this.Bind);

            return(inBinder.BindInOperator(inToken, this.BindingState));
        }