Lucene.Net.QueryParsers.QueryParser.Term C# (CSharp) Method

Term() public method

public Term ( String field ) : Query
field String
return Lucene.Net.Search.Query
        public Query Term(String field)
        {
            Token term, boost = null, fuzzySlop = null, goop1, goop2;
            bool prefix = false;
            bool wildcard = false;
            bool fuzzy = false;
            Query q;
            switch ((jj_ntk == -1) ? Jj_ntk() : jj_ntk)
            {
                case StarToken:
                case TermToken:
                case PrefixTermToken:
                case WildTermToken:
                case NumberToken:
                    switch ((jj_ntk == -1) ? Jj_ntk() : jj_ntk)
                    {
                        case TermToken:
                            term = Jj_consume_token(TermToken);
                            break;
                        case StarToken:
                            term = Jj_consume_token(StarToken);
                            wildcard = true;
                            break;
                        case PrefixTermToken:
                            term = Jj_consume_token(PrefixTermToken);
                            prefix = true;
                            break;
                        case WildTermToken:
                            term = Jj_consume_token(WildTermToken);
                            wildcard = true;
                            break;
                        case NumberToken:
                            term = Jj_consume_token(NumberToken);
                            break;
                        default:
                            jj_la1[8] = jj_gen;
                            Jj_consume_token(-1);
                            throw new ParseException();
                    }
                    switch ((jj_ntk == -1) ? Jj_ntk() : jj_ntk)
                    {
                        case FuzzySlopToken:
                            fuzzySlop = Jj_consume_token(FuzzySlopToken);
                            fuzzy = true;
                            break;
                        default:
                            jj_la1[9] = jj_gen;
                            break;
                    }
                    switch ((jj_ntk == -1) ? Jj_ntk() : jj_ntk)
                    {
                        case CaratToken:
                            Jj_consume_token(CaratToken);
                            boost = Jj_consume_token(NumberToken);
                            switch ((jj_ntk == -1) ? Jj_ntk() : jj_ntk)
                            {
                                case FuzzySlopToken:
                                    fuzzySlop = Jj_consume_token(FuzzySlopToken);
                                    fuzzy = true;
                                    break;
                                default:
                                    jj_la1[10] = jj_gen;
                                    break;
                            }
                            break;
                        default:
                            jj_la1[11] = jj_gen;
                            break;
                    }
                    String termImage = DiscardEscapeChar(term.image);
                    if (wildcard)
                    {
                        q = GetWildcardQuery(field, termImage);
                    }
                    else if (prefix)
                    {
                        q = GetPrefixQuery(field,
                                           DiscardEscapeChar(term.image.Substring(0, (term.image.Length - 1) - (0))));
                    }
                    else if (fuzzy)
                    {
                        float fms = fuzzyMinSim;
                        try
                        {
                            fms = Single.Parse(fuzzySlop.image.Substring(1));
                        }
                        catch (Exception)
                        {
                        }
                        if (fms < 0.0f || fms > 1.0f)
                        {
                            {
                                if (true)
                                    throw new ParseException(
                                        "Minimum similarity for a FuzzyQuery has to be between 0.0f and 1.0f !");
                            }
                        }
                        q = GetFuzzyQuery(field, termImage, fms);
                    }
                    else
                    {
                        q = GetFieldQuery(field, termImage);
                    }
                    break;
                case RangeInStartToken:
                    Jj_consume_token(RangeInStartToken);
                    switch ((jj_ntk == -1) ? Jj_ntk() : jj_ntk)
                    {
                        case RangeInGoopToken:
                            goop1 = Jj_consume_token(RangeInGoopToken);
                            break;
                        case RangeInQuotedToken:
                            goop1 = Jj_consume_token(RangeInQuotedToken);
                            break;
                        default:
                            jj_la1[12] = jj_gen;
                            Jj_consume_token(-1);
                            throw new ParseException();
                    }
                    switch ((jj_ntk == -1) ? Jj_ntk() : jj_ntk)
                    {
                        case RangeInToToken:
                            Jj_consume_token(RangeInToToken);
                            break;
                        default:
                            jj_la1[13] = jj_gen;
                            break;
                    }
                    switch ((jj_ntk == -1) ? Jj_ntk() : jj_ntk)
                    {
                        case RangeInGoopToken:
                            goop2 = Jj_consume_token(RangeInGoopToken);
                            break;
                        case RangeInQuotedToken:
                            goop2 = Jj_consume_token(RangeInQuotedToken);
                            break;
                        default:
                            jj_la1[14] = jj_gen;
                            Jj_consume_token(-1);
                            throw new ParseException();
                    }
                    Jj_consume_token(RangeInEndToken);
                    switch ((jj_ntk == -1) ? Jj_ntk() : jj_ntk)
                    {
                        case CaratToken:
                            Jj_consume_token(CaratToken);
                            boost = Jj_consume_token(NumberToken);
                            break;
                        default:
                            jj_la1[15] = jj_gen;
                            break;
                    }
                    if (goop1.kind == RangeInQuotedToken)
                    {
                        goop1.image = goop1.image.Substring(1, (goop1.image.Length - 1) - (1));
                    }
                    if (goop2.kind == RangeInQuotedToken)
                    {
                        goop2.image = goop2.image.Substring(1, (goop2.image.Length - 1) - (1));
                    }
                    q = GetRangeQuery(field, DiscardEscapeChar(goop1.image), DiscardEscapeChar(goop2.image), true);
                    break;
                case RangeExStartToken:
                    Jj_consume_token(RangeExStartToken);
                    switch ((jj_ntk == -1) ? Jj_ntk() : jj_ntk)
                    {
                        case RangeExGoopToken:
                            goop1 = Jj_consume_token(RangeExGoopToken);
                            break;
                        case RangeExQuotedToken:
                            goop1 = Jj_consume_token(RangeExQuotedToken);
                            break;
                        default:
                            jj_la1[16] = jj_gen;
                            Jj_consume_token(-1);
                            throw new ParseException();
                    }
                    switch ((jj_ntk == -1) ? Jj_ntk() : jj_ntk)
                    {
                        case RangeExToToken:
                            Jj_consume_token(RangeExToToken);
                            break;
                        default:
                            jj_la1[17] = jj_gen;
                            break;
                    }
                    switch ((jj_ntk == -1) ? Jj_ntk() : jj_ntk)
                    {
                        case RangeExGoopToken:
                            goop2 = Jj_consume_token(RangeExGoopToken);
                            break;
                        case RangeExQuotedToken:
                            goop2 = Jj_consume_token(RangeExQuotedToken);
                            break;
                        default:
                            jj_la1[18] = jj_gen;
                            Jj_consume_token(-1);
                            throw new ParseException();
                    }
                    Jj_consume_token(RangeExEndToken);
                    switch ((jj_ntk == -1) ? Jj_ntk() : jj_ntk)
                    {
                        case CaratToken:
                            Jj_consume_token(CaratToken);
                            boost = Jj_consume_token(NumberToken);
                            break;
                        default:
                            jj_la1[19] = jj_gen;
                            break;
                    }
                    if (goop1.kind == RangeExQuotedToken)
                    {
                        goop1.image = goop1.image.Substring(1, (goop1.image.Length - 1) - (1));
                    }
                    if (goop2.kind == RangeExQuotedToken)
                    {
                        goop2.image = goop2.image.Substring(1, (goop2.image.Length - 1) - (1));
                    }

                    q = GetRangeQuery(field, DiscardEscapeChar(goop1.image), DiscardEscapeChar(goop2.image), false);
                    break;
                case QuotedToken:
                    term = Jj_consume_token(QuotedToken);
                    switch ((jj_ntk == -1) ? Jj_ntk() : jj_ntk)
                    {
                        case FuzzySlopToken:
                            fuzzySlop = Jj_consume_token(FuzzySlopToken);
                            break;
                        default:
                            jj_la1[20] = jj_gen;
                            break;
                    }
                    switch ((jj_ntk == -1) ? Jj_ntk() : jj_ntk)
                    {
                        case CaratToken:
                            Jj_consume_token(CaratToken);
                            boost = Jj_consume_token(NumberToken);
                            break;
                        default:
                            jj_la1[21] = jj_gen;
                            break;
                    }
                    int s = phraseSlop;

                    if (fuzzySlop != null)
                    {
                        try
                        {
                            s = (int)Single.Parse(fuzzySlop.image.Substring(1));
                        }
                        catch (Exception)
                        {
                        }
                    }
                    q = GetFieldQuery(field, DiscardEscapeChar(term.image.Substring(1, (term.image.Length - 1) - (1))),
                                      s);
                    break;
                default:
                    jj_la1[22] = jj_gen;
                    Jj_consume_token(-1);
                    throw new ParseException();
            }
            if (boost != null)
            {
                float f = (float)1.0;
                try
                {
                    f = Single.Parse(boost.image);
                }
                catch (Exception)
                {
                    /* Should this be handled somehow? (defaults to "no boost", if
                     * boost number is invalid)
                     */
                }

                // avoid boosting null queries, such as those caused by stop words
                if (q != null)
                {
                    q.Boost = f;
                }
            }
            {
                if (true) return q;
            }
            throw new Exception("Missing return statement in function");
        }