1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159
|
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
<html>
<head>
<meta http-equiv="Content-Type"
content="text/html; charset=iso-8859-1">
<meta name="GENERATOR" content="Microsoft FrontPage 2.0">
<title>Geyacc: Parser Skeleton</title>
</head>
<body bgcolor="#FFFFFF">
<table border="0" width="100%">
<tr>
<td><font size="6"><strong>Parser Skeleton</strong></font></td>
<td align="right"><a href="error.html"><img
src="../image/previous.gif" alt="Previous" border="0"
width="40" height="40"></a><a href="limitations.html"><img
src="../image/next.gif" alt="Next" border="0" width="40"
height="40"></a></td>
</tr>
</table>
<hr size="1">
<pre><em><strong>indexing</strong></em>
description: "General parsers"
library: "Gobo Eiffel Parse Library"
author: "Eric Bezault <ericb@gobosoft.com>"
copyright: "Copyright (c) 1997, Eric Bezault"
<em><strong>deferred class</strong></em> <em>YY_PARSER</em> [<em>G</em>]
<em><strong>creation</strong></em>
<a href="parser.html#make" name="make"><em>make</em></a>
-- Create a new parser.
<em><strong>feature</strong></em> -- Parsing
<a href="parser.html#parse" name="parse"><em>parse</em></a>
-- Parse input stream.
-- Set <em>syntax_error</em> to True if
-- parsing has not been successful.
<em><strong>feature</strong></em> -- Status report
<a href="parser.html#syntax_error" name="syntax_error"><em>syntax_error</em></a>: <em>BOOLEAN</em>
-- Has last parsing been unsuccesful?
<em><strong>feature</strong></em> -- Access
<a href="actions.html#error_count" name="error_count"><em>error_count</em></a>: <em>INTEGER</em>
-- Number of errors detected during last parsing
-- (<em>error_count</em> can be non-zero even though
-- <em>syntax_error</em> is false. This can happen when
-- error recovery occurred.)
<em><strong>ensure</strong></em>
<em>error_count_non_negative</em>: <em>Result</em> >= <em>0</em>
</pre>
<pre><em><strong>feature</strong></em> -- Element change
<a href="actions.html#clear_all" name="clear_all"><em>clear_all</em></a>
-- Clear temporary objects so that they can be collected
-- by the garbage collector. (This routine is called by
-- <em>parse</em> before exiting. It can be redefined in descendants.)
<em><strong>feature</strong></em> {<em>YY_PARSER_ACTION</em>} -- Status report
<a href="actions.html#is_recovering" name="is_recovering"><em>is_recovering</em></a>: <em>BOOLEAN</em>
-- Is current parser recovering from a syntax error?
<em><strong>feature</strong></em> {<em>YY_PARSER_ACTION</em>} -- Basic operations
<a href="actions.html#accept" name="accept"><em>accept</em></a>
-- Stop parsing successfully.
<em><strong>ensure</strong></em>
<em>accepted</em>: <em><strong>not</strong></em> <em>syntax_error</em>
<a href="actions.html#abort" name="abort"><em>abort</em></a>
-- Abort parsing.
-- Do not print error message.
<em><strong>ensure</strong></em>
<em>aborted</em>: <em>syntax_error</em>
<a href="actions.html#raise_error" name="raise_error"><em>raise_error</em></a>
-- Raise a syntax error.
-- Report error using <em>report_error</em> and
-- perform normal error recovery if possible.
<a href="actions.html#recover" name="recover"><em>recover</em></a>
-- Recover immediately after a parse error.
<a href="actions.html#report_error" name="report_error"><em>report_error</em></a> (<em>a_message</em>: <em>STRING</em>)
-- Print error message.
-- (This routine is called by <em>parse</em> when it detects
-- a syntax error. It can be redefined in descendants.)
<em><strong>require</strong></em>
<em>a_message_not_void</em>: <em>a_message</em> /= <em>Void</em>
<a href="actions.html#clear_token" name="clear_token"><em>clear_token</em></a>
-- Clear the previous lookahead token.
-- Used in error-recovery rule actions.
<em><strong>feature</strong></em> {<em>YY_PARSER_ACTION</em>} -- Scanning
<a href="actions.html#read_token" name="read_token"><em>read_token</em></a>
-- Read a token from input stream.
-- Make result available in <em>last_token</em>.
-- (This routine is called by <em>parse</em> when it needs a
-- new token from the input stream.)
<a href="actions.html#last_token" name="last_token"><em>last_token</em></a>: <em>INTEGER</em>
-- Last token read
<a href="actions.html#last_value" name="last_value"><em>last_value</em></a>: <em>G</em>
-- Semantic value of last token read
<em><strong>end</strong></em> -- class YY_PARSER</pre>
<hr size="1">
<table border="0" width="100%">
<tr>
<td><address>
<font size="2"><b>Copyright 1999</b></font><font
size="1"><b>, </b></font><font size="2"><strong>Eric
Bezault</strong></font><strong> </strong><font
size="2"><br>
<strong>mailto:</strong></font><a
href="mailto://www.gobosoft.com"><font size="2">ericb@gobosoft.com</font></a><font
size="2"><br>
<strong>http:</strong></font><a
href="http://www.gobosoft.com"><font size="2">//www.gobosoft.com</font></a><font
size="2"><br>
<strong>Last Updated:</strong> 19 March 1999</font><br>
<!--webbot bot="PurpleText"
preview="
$Date: 1999/06/12 18:57:33 $
$Revision: 1.8 $"
-->
</address>
</td>
<td align="right" valign="top"><a
href="http://www.gobosoft.com"><img
src="../image/home.gif" alt="Home" border="0" width="40"
height="40"></a><a href="index.html"><img
src="../image/toc.gif" alt="Toc" border="0" width="40"
height="40"></a><a href="error.html"><img
src="../image/previous.gif" alt="Previous" border="0"
width="40" height="40"></a><a href="limitations.html"><img
src="../image/next.gif" alt="Next" border="0" width="40"
height="40"></a></td>
</tr>
</table>
</body>
</html>
|