chevrotain
Version:
Chevrotain is a high performance fault Tolerant Javascript parsing DSL for building recursive decent parsers
618 lines • 261 kB
HTML
<!doctype html>
<html class="default no-js">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<title>Parser | Chevrotain</title>
<meta name="description" content="">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="../assets/css/main.css">
<script src="../assets/js/modernizr.js"></script>
</head>
<body>
<header>
<div class="tsd-page-toolbar">
<div class="container">
<div class="table-wrap">
<div class="table-cell" id="tsd-search" data-index="../assets/js/search.js" data-base="..">
<div class="field">
<label for="tsd-search-field" class="tsd-widget search no-caption">Search</label>
<input id="tsd-search-field" type="text" />
</div>
<ul class="results">
<li class="state loading">Preparing search index...</li>
<li class="state failure">The search index is not available</li>
</ul>
<a href="../index.html" class="title">Chevrotain</a>
</div>
<div class="table-cell" id="tsd-widgets">
<div id="tsd-filter">
<a href="#" class="tsd-widget options no-caption" data-toggle="options">Options</a>
<div class="tsd-filter-group">
<div class="tsd-select" id="tsd-filter-visibility">
<span class="tsd-select-label">All</span>
<ul class="tsd-select-list">
<li data-value="public">Public</li>
<li data-value="protected">Public/Protected</li>
<li data-value="private" class="selected">All</li>
</ul>
</div>
<input type="checkbox" id="tsd-filter-inherited" checked />
<label class="tsd-widget" for="tsd-filter-inherited">Inherited</label>
<input type="checkbox" id="tsd-filter-only-exported" />
<label class="tsd-widget" for="tsd-filter-only-exported">Only exported</label>
</div>
</div>
<a href="#" class="tsd-widget menu no-caption" data-toggle="menu">Menu</a>
</div>
</div>
</div>
</div>
<div class="tsd-page-title">
<div class="container">
<ul class="tsd-breadcrumb">
<li>
<a href="../globals.html">Globals</a>
</li>
<li>
<a href="../modules/chevrotain.html">chevrotain</a>
</li>
<li>
<a href="chevrotain.parser.html">Parser</a>
</li>
</ul>
<h1>Class Parser</h1>
</div>
</div>
</header>
<div class="container container-main">
<div class="row">
<div class="col-8 col-content">
<section class="tsd-panel tsd-comment">
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>A Recognizer capable of self analysis to determine it's grammar structure
This is used for more advanced features requiring such information.
for example: Error Recovery, Automatic lookahead calculation</p>
</div>
</div>
</section>
<section class="tsd-panel tsd-hierarchy">
<h3>Hierarchy</h3>
<ul class="tsd-hierarchy">
<li>
<span class="target">Parser</span>
</li>
</ul>
</section>
<section class="tsd-panel-group tsd-index-group">
<h2>Index</h2>
<section class="tsd-panel tsd-index-panel">
<div class="tsd-index-content">
<section class="tsd-index-section ">
<h3>Constructors</h3>
<ul class="tsd-index-list">
<li class="tsd-kind-constructor tsd-parent-kind-class"><a href="chevrotain.parser.html#constructor" class="tsd-kind-icon">constructor</a></li>
</ul>
</section>
<section class="tsd-index-section ">
<h3>Properties</h3>
<ul class="tsd-index-list">
<li class="tsd-kind-property tsd-parent-kind-class tsd-is-protected"><a href="chevrotain.parser.html#rule_occurrence_stack" class="tsd-kind-icon">RULE_<wbr>OCCURRENCE_<wbr>STACK</a></li>
<li class="tsd-kind-property tsd-parent-kind-class tsd-is-protected"><a href="chevrotain.parser.html#rule_stack" class="tsd-kind-icon">RULE_<wbr>STACK</a></li>
<li class="tsd-kind-property tsd-parent-kind-class tsd-is-protected"><a href="chevrotain.parser.html#_input" class="tsd-kind-icon">_input</a></li>
<li class="tsd-kind-property tsd-parent-kind-class tsd-is-private"><a href="chevrotain.parser.html#atleastonelookaheadkeys" class="tsd-kind-icon">at<wbr>Least<wbr>One<wbr>Lookahead<wbr>Keys</a></li>
<li class="tsd-kind-property tsd-parent-kind-class tsd-is-private"><a href="chevrotain.parser.html#classlafuncs" class="tsd-kind-icon">classLAFuncs</a></li>
<li class="tsd-kind-property tsd-parent-kind-class tsd-is-protected"><a href="chevrotain.parser.html#classname" class="tsd-kind-icon">class<wbr>Name</a></li>
<li class="tsd-kind-property tsd-parent-kind-class tsd-is-private"><a href="chevrotain.parser.html#definedrulesnames" class="tsd-kind-icon">defined<wbr>Rules<wbr>Names</a></li>
<li class="tsd-kind-property tsd-parent-kind-class"><a href="chevrotain.parser.html#errors" class="tsd-kind-icon">errors</a></li>
<li class="tsd-kind-property tsd-parent-kind-class tsd-is-private"><a href="chevrotain.parser.html#firstafterrepmap" class="tsd-kind-icon">first<wbr>After<wbr>Rep<wbr>Map</a></li>
<li class="tsd-kind-property tsd-parent-kind-class tsd-is-protected"><a href="chevrotain.parser.html#inputidx" class="tsd-kind-icon">input<wbr>Idx</a></li>
<li class="tsd-kind-property tsd-parent-kind-class tsd-is-protected"><a href="chevrotain.parser.html#isbacktrackingstack" class="tsd-kind-icon">is<wbr>Back<wbr>Tracking<wbr>Stack</a></li>
<li class="tsd-kind-property tsd-parent-kind-class tsd-is-private"><a href="chevrotain.parser.html#manylookaheadkeys" class="tsd-kind-icon">many<wbr>Lookahead<wbr>Keys</a></li>
<li class="tsd-kind-property tsd-parent-kind-class tsd-is-private"><a href="chevrotain.parser.html#optionlookaheadkeys" class="tsd-kind-icon">option<wbr>Lookahead<wbr>Keys</a></li>
<li class="tsd-kind-property tsd-parent-kind-class tsd-is-private"><a href="chevrotain.parser.html#orlookaheadkeys" class="tsd-kind-icon">or<wbr>Lookahead<wbr>Keys</a></li>
<li class="tsd-kind-property tsd-parent-kind-class tsd-is-private"><a href="chevrotain.parser.html#rulenamepattern" class="tsd-kind-icon">rule<wbr>Name<wbr>Pattern</a></li>
<li class="tsd-kind-property tsd-parent-kind-class tsd-is-protected"><a href="chevrotain.parser.html#tokensmap" class="tsd-kind-icon">tokens<wbr>Map</a></li>
<li class="tsd-kind-property tsd-parent-kind-class tsd-is-static"><a href="chevrotain.parser.html#ignore_ambiguities" class="tsd-kind-icon">IGNORE_<wbr>AMBIGUITIES</a></li>
<li class="tsd-kind-property tsd-parent-kind-class tsd-is-static"><a href="chevrotain.parser.html#no_resync" class="tsd-kind-icon">NO_<wbr>RESYNC</a></li>
</ul>
</section>
<section class="tsd-index-section ">
<h3>Accessors</h3>
<ul class="tsd-index-list">
<li class="tsd-kind-accessor tsd-parent-kind-class"><a href="chevrotain.parser.html#input" class="tsd-kind-icon">input</a></li>
</ul>
</section>
<section class="tsd-index-section ">
<h3>Methods</h3>
<ul class="tsd-index-list">
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-protected"><a href="chevrotain.parser.html#at_least_one" class="tsd-kind-icon">AT_<wbr>LEAST_<wbr>ONE</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-protected"><a href="chevrotain.parser.html#at_least_one1" class="tsd-kind-icon">AT_<wbr>LEAST_<wbr>ONE1</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-protected"><a href="chevrotain.parser.html#at_least_one2" class="tsd-kind-icon">AT_<wbr>LEAST_<wbr>ONE2</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-protected"><a href="chevrotain.parser.html#at_least_one3" class="tsd-kind-icon">AT_<wbr>LEAST_<wbr>ONE3</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-protected"><a href="chevrotain.parser.html#at_least_one4" class="tsd-kind-icon">AT_<wbr>LEAST_<wbr>ONE4</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-protected"><a href="chevrotain.parser.html#at_least_one5" class="tsd-kind-icon">AT_<wbr>LEAST_<wbr>ONE5</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-has-type-parameter tsd-is-protected"><a href="chevrotain.parser.html#backtrack" class="tsd-kind-icon">BACKTRACK</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-protected"><a href="chevrotain.parser.html#consume" class="tsd-kind-icon">CONSUME</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-protected"><a href="chevrotain.parser.html#consume1" class="tsd-kind-icon">CONSUME1</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-protected"><a href="chevrotain.parser.html#consume2" class="tsd-kind-icon">CONSUME2</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-protected"><a href="chevrotain.parser.html#consume3" class="tsd-kind-icon">CONSUME3</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-protected"><a href="chevrotain.parser.html#consume4" class="tsd-kind-icon">CONSUME4</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-protected"><a href="chevrotain.parser.html#consume5" class="tsd-kind-icon">CONSUME5</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-protected"><a href="chevrotain.parser.html#la" class="tsd-kind-icon">LA</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-protected"><a href="chevrotain.parser.html#many" class="tsd-kind-icon">MANY</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-protected"><a href="chevrotain.parser.html#many1" class="tsd-kind-icon">MANY1</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-protected"><a href="chevrotain.parser.html#many2" class="tsd-kind-icon">MANY2</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-protected"><a href="chevrotain.parser.html#many3" class="tsd-kind-icon">MANY3</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-protected"><a href="chevrotain.parser.html#many4" class="tsd-kind-icon">MANY4</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-protected"><a href="chevrotain.parser.html#many5" class="tsd-kind-icon">MANY5</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-protected"><a href="chevrotain.parser.html#next_token" class="tsd-kind-icon">NEXT_<wbr>TOKEN</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-protected"><a href="chevrotain.parser.html#option" class="tsd-kind-icon">OPTION</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-protected"><a href="chevrotain.parser.html#option1" class="tsd-kind-icon">OPTION1</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-protected"><a href="chevrotain.parser.html#option2" class="tsd-kind-icon">OPTION2</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-protected"><a href="chevrotain.parser.html#option3" class="tsd-kind-icon">OPTION3</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-protected"><a href="chevrotain.parser.html#option4" class="tsd-kind-icon">OPTION4</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-protected"><a href="chevrotain.parser.html#option5" class="tsd-kind-icon">OPTION5</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-has-type-parameter tsd-is-protected"><a href="chevrotain.parser.html#or" class="tsd-kind-icon">OR</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-has-type-parameter tsd-is-protected"><a href="chevrotain.parser.html#or1" class="tsd-kind-icon">OR1</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-has-type-parameter tsd-is-protected"><a href="chevrotain.parser.html#or2" class="tsd-kind-icon">OR2</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-has-type-parameter tsd-is-protected"><a href="chevrotain.parser.html#or3" class="tsd-kind-icon">OR3</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-has-type-parameter tsd-is-protected"><a href="chevrotain.parser.html#or4" class="tsd-kind-icon">OR4</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-has-type-parameter tsd-is-protected"><a href="chevrotain.parser.html#or5" class="tsd-kind-icon">OR5</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-has-type-parameter tsd-is-protected"><a href="chevrotain.parser.html#rule" class="tsd-kind-icon">RULE</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-has-type-parameter tsd-is-protected"><a href="chevrotain.parser.html#rule_no_resync" class="tsd-kind-icon">RULE_<wbr>NO_<wbr>RESYNC</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-protected"><a href="chevrotain.parser.html#save_error" class="tsd-kind-icon">SAVE_<wbr>ERROR</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-protected"><a href="chevrotain.parser.html#skip_token" class="tsd-kind-icon">SKIP_<wbr>TOKEN</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-has-type-parameter tsd-is-protected"><a href="chevrotain.parser.html#subrule" class="tsd-kind-icon">SUBRULE</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-has-type-parameter tsd-is-protected"><a href="chevrotain.parser.html#subrule1" class="tsd-kind-icon">SUBRULE1</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-has-type-parameter tsd-is-protected"><a href="chevrotain.parser.html#subrule2" class="tsd-kind-icon">SUBRULE2</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-has-type-parameter tsd-is-protected"><a href="chevrotain.parser.html#subrule3" class="tsd-kind-icon">SUBRULE3</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-has-type-parameter tsd-is-protected"><a href="chevrotain.parser.html#subrule4" class="tsd-kind-icon">SUBRULE4</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-has-type-parameter tsd-is-protected"><a href="chevrotain.parser.html#subrule5" class="tsd-kind-icon">SUBRULE5</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-private"><a href="chevrotain.parser.html#atleastoneinternal" class="tsd-kind-icon">at<wbr>Least<wbr>One<wbr>Internal</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-private"><a href="chevrotain.parser.html#attemptinrepetitionrecovery" class="tsd-kind-icon">attempt<wbr>InRepetition<wbr>Recovery</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-private"><a href="chevrotain.parser.html#buildfullfollowkeystack" class="tsd-kind-icon">build<wbr>Full<wbr>Follow<wbr>Key<wbr>Stack</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-private"><a href="chevrotain.parser.html#canperforminrulerecovery" class="tsd-kind-icon">can<wbr>Perform<wbr>InRule<wbr>Recovery</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-private"><a href="chevrotain.parser.html#canrecoverwithsingletokendeletion" class="tsd-kind-icon">can<wbr>Recover<wbr>With<wbr>Single<wbr>Token<wbr>Deletion</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-private"><a href="chevrotain.parser.html#canrecoverwithsingletokeninsertion" class="tsd-kind-icon">can<wbr>Recover<wbr>With<wbr>Single<wbr>Token<wbr>Insertion</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-protected"><a href="chevrotain.parser.html#cantokentypebeinsertedinrecovery" class="tsd-kind-icon">can<wbr>Token<wbr>Type<wbr>BeInserted<wbr>InRecovery</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-private"><a href="chevrotain.parser.html#consumeinternal" class="tsd-kind-icon">consume<wbr>Internal</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-private"><a href="chevrotain.parser.html#consumeinternaloptimized" class="tsd-kind-icon">consume<wbr>Internal<wbr>Optimized</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-private"><a href="chevrotain.parser.html#defaultinvalidreturn" class="tsd-kind-icon">default<wbr>Invalid<wbr>Return</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-private"><a href="chevrotain.parser.html#findresynctokentype" class="tsd-kind-icon">find<wbr>ReSync<wbr>Token<wbr>Type</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-private"><a href="chevrotain.parser.html#flattenfollowset" class="tsd-kind-icon">flatten<wbr>Follow<wbr>Set</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-private"><a href="chevrotain.parser.html#getcurrfollowkey" class="tsd-kind-icon">get<wbr>Curr<wbr>Follow<wbr>Key</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-private"><a href="chevrotain.parser.html#getfollowsetfromfollowkey" class="tsd-kind-icon">get<wbr>Follow<wbr>Set<wbr>From<wbr>Follow<wbr>Key</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-private"><a href="chevrotain.parser.html#getfollowsforinrulerecovery" class="tsd-kind-icon">get<wbr>Follows<wbr>For<wbr>InRule<wbr>Recovery</a></li>
<li class="tsd-kind-method tsd-parent-kind-class"><a href="chevrotain.parser.html#getgastproductions" class="tsd-kind-icon">getGAst<wbr>Productions</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-private"><a href="chevrotain.parser.html#getkeyforautomaticlookahead" class="tsd-kind-icon">get<wbr>Key<wbr>For<wbr>Automatic<wbr>Lookahead</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-has-type-parameter tsd-is-private"><a href="chevrotain.parser.html#getlookaheadfuncfor" class="tsd-kind-icon">get<wbr>Lookahead<wbr>Func<wbr>For</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-private"><a href="chevrotain.parser.html#getlookaheadfuncforatleastone" class="tsd-kind-icon">get<wbr>Lookahead<wbr>Func<wbr>For<wbr>AtLeast<wbr>One</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-private"><a href="chevrotain.parser.html#getlookaheadfuncformany" class="tsd-kind-icon">get<wbr>Lookahead<wbr>Func<wbr>For<wbr>Many</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-private"><a href="chevrotain.parser.html#getlookaheadfuncforoption" class="tsd-kind-icon">get<wbr>Lookahead<wbr>Func<wbr>For<wbr>Option</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-private"><a href="chevrotain.parser.html#getlookaheadfuncforor" class="tsd-kind-icon">get<wbr>Lookahead<wbr>Func<wbr>For<wbr>Or</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-protected"><a href="chevrotain.parser.html#gettokentoinsert" class="tsd-kind-icon">get<wbr>Token<wbr>ToInsert</a></li>
<li class="tsd-kind-method tsd-parent-kind-class"><a href="chevrotain.parser.html#isatendofinput" class="tsd-kind-icon">is<wbr>AtEnd<wbr>OfInput</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-protected"><a href="chevrotain.parser.html#isbacktracking" class="tsd-kind-icon">is<wbr>Back<wbr>Tracking</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-private"><a href="chevrotain.parser.html#isincurrentruleresyncset" class="tsd-kind-icon">is<wbr>InCurrent<wbr>Rule<wbr>ReSync<wbr>Set</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-has-type-parameter tsd-is-protected"><a href="chevrotain.parser.html#isnextrule" class="tsd-kind-icon">is<wbr>Next<wbr>Rule</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-private"><a href="chevrotain.parser.html#manyinternal" class="tsd-kind-icon">many<wbr>Internal</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-private"><a href="chevrotain.parser.html#optioninternal" class="tsd-kind-icon">option<wbr>Internal</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-has-type-parameter tsd-is-private"><a href="chevrotain.parser.html#orinternal" class="tsd-kind-icon">or<wbr>Internal</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-private"><a href="chevrotain.parser.html#raisenoaltexception" class="tsd-kind-icon">raise<wbr>NoAlt<wbr>Exception</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-private"><a href="chevrotain.parser.html#resyncto" class="tsd-kind-icon">re<wbr>Sync<wbr>To</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-private"><a href="chevrotain.parser.html#reloadrecogstate" class="tsd-kind-icon">reload<wbr>Recog<wbr>State</a></li>
<li class="tsd-kind-method tsd-parent-kind-class"><a href="chevrotain.parser.html#reset" class="tsd-kind-icon">reset</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-protected"><a href="chevrotain.parser.html#rulefinallystateupdate" class="tsd-kind-icon">rule<wbr>Finally<wbr>State<wbr>Update</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-protected"><a href="chevrotain.parser.html#ruleinvocationstateupdate" class="tsd-kind-icon">rule<wbr>Invocation<wbr>State<wbr>Update</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-private"><a href="chevrotain.parser.html#saverecogstate" class="tsd-kind-icon">save<wbr>Recog<wbr>State</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-private"><a href="chevrotain.parser.html#shouldinrepetitionrecoverybetried" class="tsd-kind-icon">should<wbr>InRepetition<wbr>Recovery<wbr>BeTried</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-private"><a href="chevrotain.parser.html#tryinrepetitionrecovery" class="tsd-kind-icon">try<wbr>InRepetition<wbr>Recovery</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-private"><a href="chevrotain.parser.html#tryinrulerecovery" class="tsd-kind-icon">try<wbr>InRule<wbr>Recovery</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-private"><a href="chevrotain.parser.html#validaterulename" class="tsd-kind-icon">validate<wbr>Rule<wbr>Name</a></li>
<li class="tsd-kind-method tsd-parent-kind-class tsd-is-protected tsd-is-static"><a href="chevrotain.parser.html#performselfanalysis" class="tsd-kind-icon">perform<wbr>Self<wbr>Analysis</a></li>
</ul>
</section>
</div>
</section>
</section>
<section class="tsd-panel-group tsd-member-group ">
<h2>Constructors</h2>
<section class="tsd-panel tsd-member tsd-kind-constructor tsd-parent-kind-class">
<a name="constructor" class="tsd-anchor"></a>
<h3>constructor</h3>
<ul class="tsd-signatures tsd-kind-constructor tsd-parent-kind-class">
<li class="tsd-signature tsd-kind-icon">new <wbr>Parser<span class="tsd-signature-symbol">(</span>input<span class="tsd-signature-symbol">: </span><a href="chevrotain.token.html" class="tsd-signature-type">Token</a><span class="tsd-signature-symbol">[]</span>, tokensMapOrArr<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">object</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">Function</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="chevrotain.parser.html" class="tsd-signature-type">Parser</a></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/SAP/chevrotain/blob/HEAD/src/parse/parser_public.ts#L108">parse/parser_public.ts:108</a></li>
</ul>
</aside>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5>input: <a href="chevrotain.token.html" class="tsd-signature-type">Token</a><span class="tsd-signature-symbol">[]</span></h5>
</li>
<li>
<h5>tokensMapOrArr: <span class="tsd-signature-type">object</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">Function</span><span class="tsd-signature-symbol">[]</span></h5>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <a href="chevrotain.parser.html" class="tsd-signature-type">Parser</a></h4>
</li>
</ul>
</section>
</section>
<section class="tsd-panel-group tsd-member-group ">
<h2>Properties</h2>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class tsd-is-protected">
<a name="rule_occurrence_stack" class="tsd-anchor"></a>
<h3><span class="tsd-flag ts-flagProtected">Protected</span> RULE_<wbr>OCCURRENCE_<wbr>STACK</h3>
<div class="tsd-signature tsd-kind-icon">RULE_<wbr>OCCURRENCE_<wbr>STACK<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/SAP/chevrotain/blob/HEAD/src/parse/parser_public.ts#L100">parse/parser_public.ts:100</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class tsd-is-protected">
<a name="rule_stack" class="tsd-anchor"></a>
<h3><span class="tsd-flag ts-flagProtected">Protected</span> RULE_<wbr>STACK</h3>
<div class="tsd-signature tsd-kind-icon">RULE_<wbr>STACK<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/SAP/chevrotain/blob/HEAD/src/parse/parser_public.ts#L99">parse/parser_public.ts:99</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class tsd-is-protected">
<a name="_input" class="tsd-anchor"></a>
<h3><span class="tsd-flag ts-flagProtected">Protected</span> _input</h3>
<div class="tsd-signature tsd-kind-icon">_input<span class="tsd-signature-symbol">:</span> <a href="chevrotain.token.html" class="tsd-signature-type">Token</a><span class="tsd-signature-symbol">[]</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/SAP/chevrotain/blob/HEAD/src/parse/parser_public.ts#L95">parse/parser_public.ts:95</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class tsd-is-private">
<a name="atleastonelookaheadkeys" class="tsd-anchor"></a>
<h3><span class="tsd-flag ts-flagPrivate">Private</span> at<wbr>Least<wbr>One<wbr>Lookahead<wbr>Keys</h3>
<div class="tsd-signature tsd-kind-icon">at<wbr>Least<wbr>One<wbr>Lookahead<wbr>Keys<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">HashTable</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">[]</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/SAP/chevrotain/blob/HEAD/src/parse/parser_public.ts#L107">parse/parser_public.ts:107</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class tsd-is-private">
<a name="classlafuncs" class="tsd-anchor"></a>
<h3><span class="tsd-flag ts-flagPrivate">Private</span> classLAFuncs</h3>
<div class="tsd-signature tsd-kind-icon">classLAFuncs<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">any</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/SAP/chevrotain/blob/HEAD/src/parse/parser_public.ts#L104">parse/parser_public.ts:104</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class tsd-is-protected">
<a name="classname" class="tsd-anchor"></a>
<h3><span class="tsd-flag ts-flagProtected">Protected</span> class<wbr>Name</h3>
<div class="tsd-signature tsd-kind-icon">class<wbr>Name<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/SAP/chevrotain/blob/HEAD/src/parse/parser_public.ts#L98">parse/parser_public.ts:98</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class tsd-is-private">
<a name="definedrulesnames" class="tsd-anchor"></a>
<h3><span class="tsd-flag ts-flagPrivate">Private</span> defined<wbr>Rules<wbr>Names</h3>
<div class="tsd-signature tsd-kind-icon">defined<wbr>Rules<wbr>Names<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">[]</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/SAP/chevrotain/blob/HEAD/src/parse/parser_public.ts#L790">parse/parser_public.ts:790</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class">
<a name="errors" class="tsd-anchor"></a>
<h3>errors</h3>
<div class="tsd-signature tsd-kind-icon">errors<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Error</span><span class="tsd-signature-symbol">[]</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/SAP/chevrotain/blob/HEAD/src/parse/parser_public.ts#L93">parse/parser_public.ts:93</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class tsd-is-private">
<a name="firstafterrepmap" class="tsd-anchor"></a>
<h3><span class="tsd-flag ts-flagPrivate">Private</span> first<wbr>After<wbr>Rep<wbr>Map</h3>
<div class="tsd-signature tsd-kind-icon">first<wbr>After<wbr>Rep<wbr>Map<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">any</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/SAP/chevrotain/blob/HEAD/src/parse/parser_public.ts#L103">parse/parser_public.ts:103</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class tsd-is-protected">
<a name="inputidx" class="tsd-anchor"></a>
<h3><span class="tsd-flag ts-flagProtected">Protected</span> input<wbr>Idx</h3>
<div class="tsd-signature tsd-kind-icon">input<wbr>Idx<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/SAP/chevrotain/blob/HEAD/src/parse/parser_public.ts#L96">parse/parser_public.ts:96</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class tsd-is-protected">
<a name="isbacktrackingstack" class="tsd-anchor"></a>
<h3><span class="tsd-flag ts-flagProtected">Protected</span> is<wbr>Back<wbr>Tracking<wbr>Stack</h3>
<div class="tsd-signature tsd-kind-icon">is<wbr>Back<wbr>Tracking<wbr>Stack<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">Array</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">></span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/SAP/chevrotain/blob/HEAD/src/parse/parser_public.ts#L97">parse/parser_public.ts:97</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class tsd-is-private">
<a name="manylookaheadkeys" class="tsd-anchor"></a>
<h3><span class="tsd-flag ts-flagPrivate">Private</span> many<wbr>Lookahead<wbr>Keys</h3>
<div class="tsd-signature tsd-kind-icon">many<wbr>Lookahead<wbr>Keys<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">HashTable</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">[]</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/SAP/chevrotain/blob/HEAD/src/parse/parser_public.ts#L106">parse/parser_public.ts:106</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class tsd-is-private">
<a name="optionlookaheadkeys" class="tsd-anchor"></a>
<h3><span class="tsd-flag ts-flagPrivate">Private</span> option<wbr>Lookahead<wbr>Keys</h3>
<div class="tsd-signature tsd-kind-icon">option<wbr>Lookahead<wbr>Keys<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">HashTable</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">[]</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/SAP/chevrotain/blob/HEAD/src/parse/parser_public.ts#L108">parse/parser_public.ts:108</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class tsd-is-private">
<a name="orlookaheadkeys" class="tsd-anchor"></a>
<h3><span class="tsd-flag ts-flagPrivate">Private</span> or<wbr>Lookahead<wbr>Keys</h3>
<div class="tsd-signature tsd-kind-icon">or<wbr>Lookahead<wbr>Keys<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">HashTable</span><span class="tsd-signature-symbol"><</span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">></span><span class="tsd-signature-symbol">[]</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/SAP/chevrotain/blob/HEAD/src/parse/parser_public.ts#L105">parse/parser_public.ts:105</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class tsd-is-private">
<a name="rulenamepattern" class="tsd-anchor"></a>
<h3><span class="tsd-flag ts-flagPrivate">Private</span> rule<wbr>Name<wbr>Pattern</h3>
<div class="tsd-signature tsd-kind-icon">rule<wbr>Name<wbr>Pattern<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">RegExp</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/SAP/chevrotain/blob/HEAD/src/parse/parser_public.ts#L789">parse/parser_public.ts:789</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class tsd-is-protected">
<a name="tokensmap" class="tsd-anchor"></a>
<h3><span class="tsd-flag ts-flagProtected">Protected</span> tokens<wbr>Map</h3>
<div class="tsd-signature tsd-kind-icon">tokens<wbr>Map<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">object</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/SAP/chevrotain/blob/HEAD/src/parse/parser_public.ts#L101">parse/parser_public.ts:101</a></li>
</ul>
</aside>
<div class="tsd-type-declaration">
<h4>Type declaration</h4>
<ul class="tsd-parameters">
<li class="tsd-parameter-index-signature">
<h5><span class="tsd-signature-symbol">[</span>fqn: <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">]: </span><span class="tsd-signature-type">Function</span></h5>
</li>
</ul>
</div>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class tsd-is-static">
<a name="ignore_ambiguities" class="tsd-anchor"></a>
<h3><span class="tsd-flag ts-flagStatic">Static</span> IGNORE_<wbr>AMBIGUITIES</h3>
<div class="tsd-signature tsd-kind-icon">IGNORE_<wbr>AMBIGUITIES<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/SAP/chevrotain/blob/HEAD/src/parse/parser_public.ts#L66">parse/parser_public.ts:66</a></li>
</ul>
</aside>
</section>
<section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class tsd-is-static">
<a name="no_resync" class="tsd-anchor"></a>
<h3><span class="tsd-flag ts-flagStatic">Static</span> NO_<wbr>RESYNC</h3>
<div class="tsd-signature tsd-kind-icon">NO_<wbr>RESYNC<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span></div>
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/SAP/chevrotain/blob/HEAD/src/parse/parser_public.ts#L67">parse/parser_public.ts:67</a></li>
</ul>
</aside>
</section>
</section>
<section class="tsd-panel-group tsd-member-group ">
<h2>Accessors</h2>
<section class="tsd-panel tsd-member tsd-kind-accessor tsd-parent-kind-class">
<a name="input" class="tsd-anchor"></a>
<h3>input</h3>
<ul class="tsd-signatures tsd-kind-accessor tsd-parent-kind-class">
<li class="tsd-signature tsd-kind-icon"><span class="tsd-signature-symbol">get</span> input<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="chevrotain.token.html" class="tsd-signature-type">Token</a><span class="tsd-signature-symbol">[]</span></li>
<li class="tsd-signature tsd-kind-icon"><span class="tsd-signature-symbol">set</span> input<span class="tsd-signature-symbol">(</span>newInput<span class="tsd-signature-symbol">: </span><a href="chevrotain.token.html" class="tsd-signature-type">Token</a><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/SAP/chevrotain/blob/HEAD/src/parse/parser_public.ts#L148">parse/parser_public.ts:148</a></li>
</ul>
</aside>
<h4 class="tsd-returns-title">Returns <a href="chevrotain.token.html" class="tsd-signature-type">Token</a><span class="tsd-signature-symbol">[]</span></h4>
</li>
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/SAP/chevrotain/blob/HEAD/src/parse/parser_public.ts#L143">parse/parser_public.ts:143</a></li>
</ul>
</aside>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5>newInput: <a href="chevrotain.token.html" class="tsd-signature-type">Token</a><span class="tsd-signature-symbol">[]</span></h5>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
</li>
</ul>
</section>
</section>
<section class="tsd-panel-group tsd-member-group ">
<h2>Methods</h2>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-is-protected">
<a name="at_least_one" class="tsd-anchor"></a>
<h3><span class="tsd-flag ts-flagProtected">Protected</span> AT_<wbr>LEAST_<wbr>ONE</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-protected">
<li class="tsd-signature tsd-kind-icon">AT_<wbr>LEAST_<wbr>ONE<span class="tsd-signature-symbol">(</span>laFuncOrAction<span class="tsd-signature-symbol">: </span><a href="../modules/chevrotain.html#lookaheadfunc" class="tsd-signature-type">LookAheadFunc</a><span class="tsd-signature-symbol"> | </span><a href="../modules/chevrotain.html#grammaraction" class="tsd-signature-type">GrammarAction</a>, action<span class="tsd-signature-symbol">: </span><a href="../modules/chevrotain.html#grammaraction" class="tsd-signature-type">GrammarAction</a><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">string</span>, errMsg<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/SAP/chevrotain/blob/HEAD/src/parse/parser_public.ts#L614">parse/parser_public.ts:614</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>Convenience method equivalent to AT_LEAST_ONE1</p>
</div>
<dl class="tsd-comment-tags">
<dt>see</dt>
<dd><p>AT_LEAST_ONE1</p>
</dd>
</dl>
</div>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5>laFuncOrAction: <a href="../modules/chevrotain.html#lookaheadfunc" class="tsd-signature-type">LookAheadFunc</a><span class="tsd-signature-symbol"> | </span><a href="../modules/chevrotain.html#grammaraction" class="tsd-signature-type">GrammarAction</a></h5>
</li>
<li>
<h5>action: <a href="../modules/chevrotain.html#grammaraction" class="tsd-signature-type">GrammarAction</a><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">string</span></h5>
</li>
<li>
<h5><span class="tsd-flag ts-flagOptional">Optional</span> errMsg: <span class="tsd-signature-type">string</span></h5>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
</li>
</ul>
</section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-is-protected">
<a name="at_least_one1" class="tsd-anchor"></a>
<h3><span class="tsd-flag ts-flagProtected">Protected</span> AT_<wbr>LEAST_<wbr>ONE1</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-protected">
<li class="tsd-signature tsd-kind-icon">AT_<wbr>LEAST_<wbr>ONE1<span class="tsd-signature-symbol">(</span>laFuncOrAction<span class="tsd-signature-symbol">: </span><a href="../modules/chevrotain.html#lookaheadfunc" class="tsd-signature-type">LookAheadFunc</a><span class="tsd-signature-symbol"> | </span><a href="../modules/chevrotain.html#grammaraction" class="tsd-signature-type">GrammarAction</a>, action<span class="tsd-signature-symbol">: </span><a href="../modules/chevrotain.html#grammaraction" class="tsd-signature-type">GrammarAction</a><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">string</span>, errMsg<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/SAP/chevrotain/blob/HEAD/src/parse/parser_public.ts#L634">parse/parser_public.ts:634</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<div class="lead">
<p>convenience method, same as MANY but the repetition is of one or more.
failing to match at least one repetition will result in a parsing error and
cause the parser to attempt error recovery.</p>
</div>
<dl class="tsd-comment-tags">
<dt>see</dt>
<dd><p>MANY1</p>
</dd>
</dl>
</div>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5>laFuncOrAction: <a href="../modules/chevrotain.html#lookaheadfunc" class="tsd-signature-type">LookAheadFunc</a><span class="tsd-signature-symbol"> | </span><a href="../modules/chevrotain.html#grammaraction" class="tsd-signature-type">GrammarAction</a></h5>
<div class="tsd-comment tsd-typography">
<p>The lookahead function that 'decides'
whether or not the AT_LEAST_ONE's action will be
invoked or the action to optionally invoke</p>
</div>
</li>
<li>
<h5>action: <a href="../modules/chevrotain.html#grammaraction" class="tsd-signature-type">GrammarAction</a><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">string</span></h5>
</li>
<li>
<h5><span class="tsd-flag ts-flagOptional">Optional</span> errMsg: <span class="tsd-signature-type">string</span></h5>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
</li>
</ul>
</section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-is-protected">
<a name="at_least_one2" class="tsd-anchor"></a>
<h3><span class="tsd-flag ts-flagProtected">Protected</span> AT_<wbr>LEAST_<wbr>ONE2</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-protected">
<li class="tsd-signature tsd-kind-icon">AT_<wbr>LEAST_<wbr>ONE2<span class="tsd-signature-symbol">(</span>laFuncOrAction<span class="tsd-signature-symbol">: </span><a href="../modules/chevrotain.html#lookaheadfunc" class="tsd-signature-type">LookAheadFunc</a><span class="tsd-signature-symbol"> | </span><a href="../modules/chevrotain.html#grammaraction" class="tsd-signature-type">GrammarAction</a>, action<span class="tsd-signature-symbol">: </span><a href="../modules/chevrotain.html#grammaraction" class="tsd-signature-type">GrammarAction</a><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">string</span>, errMsg<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/SAP/chevrotain/blob/HEAD/src/parse/parser_public.ts#L643">parse/parser_public.ts:643</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<dl class="tsd-comment-tags">
<dt>see</dt>
<dd><p>AT_LEAST_ONE1</p>
</dd>
</dl>
</div>
<h4 class="tsd-parameters-title">Parameters</h4>
<ul class="tsd-parameters">
<li>
<h5>laFuncOrAction: <a href="../modules/chevrotain.html#lookaheadfunc" class="tsd-signature-type">LookAheadFunc</a><span class="tsd-signature-symbol"> | </span><a href="../modules/chevrotain.html#grammaraction" class="tsd-signature-type">GrammarAction</a></h5>
</li>
<li>
<h5>action: <a href="../modules/chevrotain.html#grammaraction" class="tsd-signature-type">GrammarAction</a><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">string</span></h5>
</li>
<li>
<h5><span class="tsd-flag ts-flagOptional">Optional</span> errMsg: <span class="tsd-signature-type">string</span></h5>
</li>
</ul>
<h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4>
</li>
</ul>
</section>
<section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-is-protected">
<a name="at_least_one3" class="tsd-anchor"></a>
<h3><span class="tsd-flag ts-flagProtected">Protected</span> AT_<wbr>LEAST_<wbr>ONE3</h3>
<ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-protected">
<li class="tsd-signature tsd-kind-icon">AT_<wbr>LEAST_<wbr>ONE3<span class="tsd-signature-symbol">(</span>laFuncOrAction<span class="tsd-signature-symbol">: </span><a href="../modules/chevrotain.html#lookaheadfunc" class="tsd-signature-type">LookAheadFunc</a><span class="tsd-signature-symbol"> | </span><a href="../modules/chevrotain.html#grammaraction" class="tsd-signature-type">GrammarAction</a>, action<span class="tsd-signature-symbol">: </span><a href="../modules/chevrotain.html#grammaraction" class="tsd-signature-type">GrammarAction</a><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">string</span>, errMsg<span class="tsd-signature-symbol">?: </span><span class="tsd-signature-type">string</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li>
</ul>
<ul class="tsd-descriptions">
<li class="tsd-description">
<aside class="tsd-sources">
<ul>
<li>Defined in <a href="https://github.com/SAP/chevrotain/blob/HEAD/src/parse/parser_public.ts#L652">parse/parser_public.ts:652</a></li>
</ul>
</aside>
<div class="tsd-comment tsd-typography">
<dl class="tsd-comment-tags">
<dt>see</dt>
<dd><p>AT_LEAST_ONE1</p>
</dd>
</dl>
</div>
<h4 class="tsd-parameters-title">Paramet