|
Server : Apache/2.2.2 (Fedora) System : Linux App1.pathumtani.go.th 2.6.20-1.2320.fc5smp #1 SMP Tue Jun 12 19:40:16 EDT 2007 i686 User : apache ( 48) PHP Version : 5.2.9 Disable Function : NONE Directory : /usr/share/javadoc/antlr-2.7.4/antlr/ |
Upload File : |
<?xml version="1.0" encoding="US-ASCII"?> <!DOCTYPE html PUBLIC "-//gnu.org///DTD XHTML 1.1 plus Target 1.0//EN" "../resources/xhtml11-target10.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"><head><title>GrammarAnalyzer (antlr Javadoc)</title><script src="../resources/gjdoc.js" type="text/javascript"><!-- this comment required for konqueror 3.2.2 --></script><meta http-equiv="Content-Type" content="text/html; charset=US-ASCII"/><meta name="generator" content="GNU Gjdoc Standard Doclet"/><meta name="keywords" content="antlr.GrammarAnalyzer class"/><meta name="keywords" content="NONDETERMINISTIC"/><meta name="keywords" content="LOOKAHEAD_DEPTH_INIT"/><link rel="stylesheet" type="text/css" href="../resources/gjdochtml-clean-layout.css" title="GNU Clean"/><link rel="stylesheet" type="text/css" href="../resources/gjdochtml-clean-color1.css" title="GNU Clean"/></head><body class="content class" onload="if(parent.contentPageLoaded)parent.contentPageLoaded(document.title)"><table class="navbar div top"><tr><td class="navbar div top"><div class="navbar div top"><span class="navbar item enabled"><a href="../overview-summary.html">Overview</a></span> <span class="navbar item enabled"><a href="package-summary.html">Package</a></span> <span class="navbar item active">Class</span> <span class="navbar item enabled"><a href="GrammarAnalyzer-uses.html">Use</a></span> <span class="navbar item enabled"><a href="tree.html">Tree</a></span> <span class="navbar item enabled"><a href="../alphaindex-1.html">Index</a></span> <span class="navbar item enabled"><a href="../deprecated.html">Deprecated</a></span> <span class="navbar item enabled"><a href="../about.html">About</a></span></div></td></tr><tr><td class="navi"><a href="../antlr/Grammar.html">Prev Class</a> | <a href="../antlr/GrammarAtom.html">Next Class</a></td><td class="navi"><a href="../index.html" title="Show in a frameset" target="_top">Frames</a> | <a href="GrammarAnalyzer.html" title="Show without frames" target="_top">No Frames</a> </td></tr><tr><td class="navi">Summary: Nested | <a href="#summary-fields">Field</a> | Method | Constr</td><td class="navi">Detail: Nested | <a href="#detail-fields">Field</a> | Method | Constr</td></tr></table><div class="class title outer"><h3 class="class title-package">antlr</h3><h1 class="class title-class">Interface GrammarAnalyzer</h1></div><dl class="class knownimplementing"><dt class="header"><b>Known Subinterfaces:</b></dt><dd class="item"><a href="../antlr/LLkGrammarAnalyzer.html" title="Interface in antlr">LLkGrammarAnalyzer</a></dd></dl><dl class="class knownimplementing"><dt class="header"><b>Known Implementing Classes:</b></dt><dd class="item"><a href="../antlr/LLkAnalyzer.html" title="Class in antlr">LLkAnalyzer</a></dd></dl><hr/><div class="class synopsis outer"><div class="class synopsis declaration"><code>public interface <b class="class synopsis name">GrammarAnalyzer</b></code></div></div><hr/><div class="class description">A GrammarAnalyzer computes lookahead from Grammar (which contains a grammar symbol table) and can then answer questions about the grammar. To access the RuleBlock for a rule name, the grammar symbol table is consulted. There should be no distinction between static & dynamic analysis. In other words, some of the easy analysis can be done statically and then the part that is hard statically can be deferred to parse-time. Interestingly, computing LL(k) for k>1 lookahead statically is O(|T|^k) where T is the grammar vocabulary, but, is O(k) at run-time (ignoring the large constant associated with the size of the grammar). In English, the difference can be described as "find the set of all possible k-sequences of input" versus "does this specific k-sequence match?". </div><div class="taglet"></div><div class="taglet"></div><div class="taglet"></div><div class="taglet"></div><div class="taglet"></div><a name="summary-fields" id="summary-fields"/><dl class="table container"><dd><table class="class summary" border="1" width="100%"><tr class="table header"><td colspan="2"><h2 class="table header">Field Summary</h2></td></tr><tr><td class="left" valign="top"><code class="synopsis">static int</code></td><td class="right"><dl class="list"><dt class="synopsis"><code><a href="#LOOKAHEAD_DEPTH_INIT">LOOKAHEAD_DEPTH_INIT</a></code></dt></dl></td></tr><tr><td class="left" valign="top"><code class="synopsis">static int</code></td><td class="right"><dl class="list"><dt class="synopsis"><code><a href="#NONDETERMINISTIC">NONDETERMINISTIC</a></code></dt><dd class="description">The epsilon token type is an imaginary type used during analysis.</dd></dl></td></tr></table></dd></dl><a name="detail-fields" id="detail-fields"/><h2 class="section header">Field Details</h2><div class="section"><a name="LOOKAHEAD_DEPTH_INIT" id="LOOKAHEAD_DEPTH_INIT"/><div class="member detail outer"><h3 class="member detail name">LOOKAHEAD_DEPTH_INIT</h3><pre class="member detail synopsis">public static final int LOOKAHEAD_DEPTH_INIT</pre><blockquote class="member detail name"><div class="member detail description"></div><div class="member detail thrown list"><dl><dt class="member detail thrown header"><b>Field Value:</b></dt><dd class="member detail thrown item">-1</dd></dl></div><div class="taglet"></div><div class="taglet"></div><div class="taglet"></div><div class="taglet"></div><div class="taglet"></div></blockquote></div><hr/><a name="NONDETERMINISTIC" id="NONDETERMINISTIC"/><div class="member detail outer"><h3 class="member detail name">NONDETERMINISTIC</h3><pre class="member detail synopsis">public static final int NONDETERMINISTIC</pre><blockquote class="member detail name"><div class="member detail description">The epsilon token type is an imaginary type used during analysis. It indicates an incomplete look() computation. Must be kept consistent with Token constants to be between MIN_USER_TYPE and INVALID_TYPE. </div><div class="taglet"></div><div class="taglet"></div><div class="taglet"></div><div class="taglet"></div><div class="taglet"></div></blockquote></div></div><p class="navbar bottom spacer"> </p><table class="navbar div bottom"><tr><td><div class="navbar div top"><span class="navbar item enabled"><a href="../overview-summary.html">Overview</a></span> <span class="navbar item enabled"><a href="package-summary.html">Package</a></span> <span class="navbar item active">Class</span> <span class="navbar item enabled"><a href="GrammarAnalyzer-uses.html">Use</a></span> <span class="navbar item enabled"><a href="tree.html">Tree</a></span> <span class="navbar item enabled"><a href="../alphaindex-1.html">Index</a></span> <span class="navbar item enabled"><a href="../deprecated.html">Deprecated</a></span> <span class="navbar item enabled"><a href="../about.html">About</a></span></div></td></tr></table></body></html>