﻿<!DOCTYPE html>
<!--[if IE]><![endif]-->
<html>
  
  <head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
    <title>Namespace Lucene.Net.QueryParsers.Surround.Parser
   | Apache Lucene.NET 4.8.0-beta00013 Documentation </title>
    <meta name="viewport" content="width=device-width">
    <meta name="title" content="Namespace Lucene.Net.QueryParsers.Surround.Parser
   | Apache Lucene.NET 4.8.0-beta00013 Documentation ">
    <meta name="generator" content="docfx 2.56.2.0">
    
    <link rel="shortcut icon" href="https://lucenenet.apache.org/docs/4.8.0-beta00009/logo/favicon.ico">
    <link rel="stylesheet" href="https://lucenenet.apache.org/docs/4.8.0-beta00009/styles/docfx.vendor.css">
    <link rel="stylesheet" href="https://lucenenet.apache.org/docs/4.8.0-beta00009/styles/docfx.css">
    <link rel="stylesheet" href="https://lucenenet.apache.org/docs/4.8.0-beta00009/styles/main.css">
    <meta property="docfx:navrel" content="toc.html">
    <meta property="docfx:tocrel" content="queryparser/toc.html">
    
    <meta property="docfx:rel" content="https://lucenenet.apache.org/docs/4.8.0-beta00009/">
    
  </head>
  <body data-spy="scroll" data-target="#affix" data-offset="120">
    <span id="forkongithub"><a href="https://github.com/apache/lucenenet" target="_blank">Fork me on GitHub</a></span>
    <div id="wrapper">
      <header>
        
        <nav id="autocollapse" class="navbar ng-scope" role="navigation">
          <div class="container">
            <div class="navbar-header">
              <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#navbar">
                <span class="sr-only">Toggle navigation</span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
              </button>
              
              <a class="navbar-brand" href="/">
                <img id="logo" class="svg" src="https://lucenenet.apache.org/docs/4.8.0-beta00009/logo/lucene-net-color.png" alt="">
              </a>
            </div>
            <div class="collapse navbar-collapse" id="navbar">
              <form class="navbar-form navbar-right" role="search" id="search">
                <div class="form-group">
                  <input type="text" class="form-control" id="search-query" placeholder="Search" autocomplete="off">
                </div>
              </form>
            </div>
          </div>
        </nav>
        
        <div class="subnav navbar navbar-default">
          <div class="container hide-when-search">
            <ul class="level0 breadcrumb">
                <li>
                    <a href="https://lucenenet.apache.org/docs/4.8.0-beta00009/">API</a>
                     <span id="breadcrumb">
                        <ul class="breadcrumb">
                          <li></li>
                        </ul>
                    </span>   
                </li>
            </ul>
          </div>
        </div>
      </header>
      <div class="container body-content">
        
        <div id="search-results">
          <div class="search-list"></div>
          <div class="sr-items">
            <p><i class="glyphicon glyphicon-refresh index-loading"></i></p>
          </div>
          <ul id="pagination"></ul>
        </div>
      </div>
      <div role="main" class="container body-content hide-when-search">
        
        <div class="sidenav hide-when-search">
          <a class="btn toc-toggle collapse" data-toggle="collapse" href="#sidetoggle" aria-expanded="false" aria-controls="sidetoggle">Show / Hide Table of Contents</a>
          <div class="sidetoggle collapse" id="sidetoggle">
            <div id="sidetoc"></div>
          </div>
        </div>
        <div class="article row grid-right">
          <div class="col-md-10">
            <article class="content wrap" id="_content" data-uid="Lucene.Net.QueryParsers.Surround.Parser">
  
  <h1 id="Lucene_Net_QueryParsers_Surround_Parser" data-uid="Lucene.Net.QueryParsers.Surround.Parser" class="text-break">Namespace Lucene.Net.QueryParsers.Surround.Parser
  </h1>
  <div class="markdown level0 summary"><!--
 Licensed to the Apache Software Foundation (ASF) under one or more
 contributor license agreements.  See the NOTICE file distributed with
 this work for additional information regarding copyright ownership.
 The ASF licenses this file to You under the Apache License, Version 2.0
 (the "License"); you may not use this file except in compliance with
 the License.  You may obtain a copy of the License at

     http://www.apache.org/licenses/LICENSE-2.0

 Unless required by applicable law or agreed to in writing, software
 distributed under the License is distributed on an "AS IS" BASIS,
 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 See the License for the specific language governing permissions and
 limitations under the License.
-->
<pre><code>This package contains the QueryParser.jj source file for the Surround parser.

Parsing the text of a query results in a SrndQuery in the
org.apache.lucene.queryparser.surround.query package.
</code></pre></div>
  <div class="markdown level0 conceptual"></div>
  <div class="markdown level0 remarks"></div>
    <h3 id="classes">Classes
  </h3>
      <h4><a class="xref" href="Lucene.Net.QueryParsers.Surround.Parser.FastCharStream.html">FastCharStream</a></h4>
      <section><p>An efficient implementation of JavaCC&apos;s <a class="xref" href="Lucene.Net.QueryParsers.Surround.Parser.ICharStream.html">ICharStream</a> interface.<br><p>
Note that
this does not do line-number counting, but instead keeps track of the
character position of the token in the input, as required by Lucene&apos;s <a class="xref" href="https://lucenenet.apache.org/docs/4.8.0-beta00013/api/core/Lucene.Net.Analysis.Token.html">Token</a>
API.</p>
</section>
      <h4><a class="xref" href="Lucene.Net.QueryParsers.Surround.Parser.LexicalToken.html">LexicalToken</a></h4>
      <section></section>
      <h4><a class="xref" href="Lucene.Net.QueryParsers.Surround.Parser.ParseException.html">ParseException</a></h4>
      <section><p>This exception is thrown when parse errors are encountered.
You can explicitly create objects of this exception type by
calling the method GenerateParseException in the generated
parser.</p>
<p>You can modify this class to customize your error reporting
mechanisms so long as you retain the public fields.</p>
</section>
      <h4><a class="xref" href="Lucene.Net.QueryParsers.Surround.Parser.QueryParser.html">QueryParser</a></h4>
      <section><p>This class is generated by JavaCC.  The only method that clients should need
to call is <a class="xref" href="Lucene.Net.QueryParsers.Surround.Parser.QueryParser.html#Lucene_Net_QueryParsers_Surround_Parser_QueryParser_Parse_System_String_">Parse(String)</a>.</p>
<p>
This parser generates queries that make use of position information
(Span queries). It provides positional operators (<code>w</code> and
<code>n</code>) that accept a numeric distance, as well as boolean
operators (<code>and</code>, <code>or</code>, and <code>not</code>,
wildcards (<code>///</code> and <code>?</code>), quoting (with
<code>&quot;</code>), and boosting (via <code>^</code>).
</p>

<p>
The operators (W, N, AND, OR, NOT) can be expressed lower-cased or
upper-cased, and the non-unary operators (everything but NOT) support
both infix <code>(a AND b AND c)</code> and prefix <code>AND(a, b,
c)</code> notation.
</p>

<p>
The W and N operators express a positional relationship among their
operands.  N is ordered, and W is unordered.  The distance is 1 by
default, meaning the operands are adjacent, or may be provided as a
prefix from 2-99.  So, for example, 3W(a, b) means that terms a and b
must appear within three positions of each other, or in other words, up
to two terms may appear between a and b. 
</p>
</section>
      <h4><a class="xref" href="Lucene.Net.QueryParsers.Surround.Parser.QueryParserConstants.html">QueryParserConstants</a></h4>
      <section><p>Token literal values and constants.
Generated by org.javacc.parser.OtherFilesGen#start()</p>
</section>
      <h4><a class="xref" href="Lucene.Net.QueryParsers.Surround.Parser.QueryParserTokenManager.html">QueryParserTokenManager</a></h4>
      <section><p>Token Manager.</p>
</section>
      <h4><a class="xref" href="Lucene.Net.QueryParsers.Surround.Parser.RegexpToken.html">RegexpToken</a></h4>
      <section></section>
      <h4><a class="xref" href="Lucene.Net.QueryParsers.Surround.Parser.Token.html">Token</a></h4>
      <section><p>Describes the input token stream.</p>
</section>
      <h4><a class="xref" href="Lucene.Net.QueryParsers.Surround.Parser.TokenMgrError.html">TokenMgrError</a></h4>
      <section><p>Token Manager Error. </p>
</section>
    <h3 id="interfaces">Interfaces
  </h3>
      <h4><a class="xref" href="Lucene.Net.QueryParsers.Surround.Parser.ICharStream.html">ICharStream</a></h4>
      <section><p>This interface describes a character stream that maintains line and
column number positions of the characters.  It also has the capability
to backup the stream to some extent.  An implementation of this
interface is used in the TokenManager implementation generated by
JavaCCParser.</p>
<p>All the methods except <a class="xref" href="Lucene.Net.QueryParsers.Surround.Parser.ICharStream.html#Lucene_Net_QueryParsers_Surround_Parser_ICharStream_BackUp_System_Int32_">BackUp(Int32)</a> can be implemented in any fashion. <a class="xref" href="Lucene.Net.QueryParsers.Surround.Parser.ICharStream.html#Lucene_Net_QueryParsers_Surround_Parser_ICharStream_BackUp_System_Int32_">BackUp(Int32)</a>
needs to be implemented correctly for the correct operation of the lexer.
Rest of the methods are all used to get information like line number,
column number and the string that constitutes a token and are not used
by the lexer. Hence their implementation won&apos;t affect the generated lexer&apos;s
operation.</p>
</section>
</article>
          </div>
          
          <div class="hidden-sm col-md-2" role="complementary">
            <div class="sideaffix">
              <div class="contribution">
                <ul class="nav">
                  <li>
                    <a href="https://github.com/apache/lucenenet/blob/docs/4.8.0-beta00013/src/Lucene.Net.QueryParser/Surround/Parser/package.md/#L2" class="contribution-link">Improve this Doc</a>
                  </li>
                </ul>
              </div>
              <nav class="bs-docs-sidebar hidden-print hidden-xs hidden-sm affix" id="affix">
              <!-- <p><a class="back-to-top" href="#top">Back to top</a><p> -->
              </nav>
            </div>
          </div>
        </div>
      </div>
      
      <footer>
        <div class="grad-bottom"></div>
        <div class="footer">
          <div class="container">
            <span class="pull-right">
              <a href="#top">Back to top</a>
            </span>
            Copyright © 2020 The Apache Software Foundation, Licensed under the <a href='http://www.apache.org/licenses/LICENSE-2.0' target='_blank'>Apache License, Version 2.0</a><br> <small>Apache Lucene.Net, Lucene.Net, Apache, the Apache feather logo, and the Apache Lucene.Net project logo are trademarks of The Apache Software Foundation. <br>All other marks mentioned may be trademarks or registered trademarks of their respective owners.</small>
            
          </div>
        </div>
      </footer>
    </div>
    
    <script type="text/javascript" src="https://lucenenet.apache.org/docs/4.8.0-beta00009/styles/docfx.vendor.js"></script>
    <script type="text/javascript" src="https://lucenenet.apache.org/docs/4.8.0-beta00009/styles/docfx.js"></script>
    <script type="text/javascript" src="https://lucenenet.apache.org/docs/4.8.0-beta00009/styles/main.js"></script>
  </body>
</html>
