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
|
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- Created by GNU Texinfo 5.2, http://www.gnu.org/software/texinfo/ -->
<head>
<title>GNU Octave: Parser</title>
<meta name="description" content="GNU Octave: Parser">
<meta name="keywords" content="GNU Octave: Parser">
<meta name="resource-type" content="document">
<meta name="distribution" content="global">
<meta name="Generator" content="makeinfo">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link href="index.html#Top" rel="start" title="Top">
<link href="Concept-Index.html#Concept-Index" rel="index" title="Concept Index">
<link href="index.html#SEC_Contents" rel="contents" title="Table of Contents">
<link href="Grammar-and-Parser.html#Grammar-and-Parser" rel="up" title="Grammar and Parser">
<link href="Copying.html#Copying" rel="next" title="Copying">
<link href="Keywords.html#Keywords" rel="prev" title="Keywords">
<style type="text/css">
<!--
a.summary-letter {text-decoration: none}
blockquote.smallquotation {font-size: smaller}
div.display {margin-left: 3.2em}
div.example {margin-left: 3.2em}
div.indentedblock {margin-left: 3.2em}
div.lisp {margin-left: 3.2em}
div.smalldisplay {margin-left: 3.2em}
div.smallexample {margin-left: 3.2em}
div.smallindentedblock {margin-left: 3.2em; font-size: smaller}
div.smalllisp {margin-left: 3.2em}
kbd {font-style:oblique}
pre.display {font-family: inherit}
pre.format {font-family: inherit}
pre.menu-comment {font-family: serif}
pre.menu-preformatted {font-family: serif}
pre.smalldisplay {font-family: inherit; font-size: smaller}
pre.smallexample {font-size: smaller}
pre.smallformat {font-family: inherit; font-size: smaller}
pre.smalllisp {font-size: smaller}
span.nocodebreak {white-space:nowrap}
span.nolinebreak {white-space:nowrap}
span.roman {font-family:serif; font-weight:normal}
span.sansserif {font-family:sans-serif; font-weight:normal}
ul.no-bullet {list-style: none}
-->
</style>
</head>
<body lang="en" bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink="#800080" alink="#FF0000">
<a name="Parser"></a>
<div class="header">
<p>
Previous: <a href="Keywords.html#Keywords" accesskey="p" rel="prev">Keywords</a>, Up: <a href="Grammar-and-Parser.html#Grammar-and-Parser" accesskey="u" rel="up">Grammar and Parser</a> [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="Concept-Index.html#Concept-Index" title="Index" rel="index">Index</a>]</p>
</div>
<hr>
<a name="Parser-1"></a>
<h3 class="section">I.2 Parser</h3>
<a name="index-parser"></a>
<p>The parser has a number of variables that affect its internal operation.
These variables are generally documented in the manual alongside the code that
they affect. For example, <code>allow_noninteger_range_as_index</code> is discussed
in the section on index expressions.
</p>
<p>In addition, there are three non-specific parser customization functions.
<code>add_input_event_hook</code> can be used to schedule a user function for
periodic evaluation. <code>remove_input_event_hook</code> will stop a user function
from being evaluated periodically.
</p>
<a name="XREFadd_005finput_005fevent_005fhook"></a><dl>
<dt><a name="index-add_005finput_005fevent_005fhook"></a>Built-in Function: <em><var>id</var> =</em> <strong>add_input_event_hook</strong> <em>(<var>fcn</var>)</em></dt>
<dt><a name="index-add_005finput_005fevent_005fhook-1"></a>Built-in Function: <em><var>id</var> =</em> <strong>add_input_event_hook</strong> <em>(<var>fcn</var>, <var>data</var>)</em></dt>
<dd><p>Add the named function or function handle <var>fcn</var> to the list of functions
to call periodically when Octave is waiting for input. The function should
have the form
</p>
<div class="example">
<pre class="example"><var>fcn</var> (<var>data</var>)
</pre></div>
<p>If <var>data</var> is omitted, Octave calls the function without any
arguments.
</p>
<p>The returned identifier may be used to remove the function handle from
the list of input hook functions.
</p>
<p><strong>See also:</strong> <a href="#XREFremove_005finput_005fevent_005fhook">remove_input_event_hook</a>.
</p></dd></dl>
<a name="XREFremove_005finput_005fevent_005fhook"></a><dl>
<dt><a name="index-remove_005finput_005fevent_005fhook"></a>Built-in Function: <em></em> <strong>remove_input_event_hook</strong> <em>(<var>name</var>)</em></dt>
<dt><a name="index-remove_005finput_005fevent_005fhook-1"></a>Built-in Function: <em></em> <strong>remove_input_event_hook</strong> <em>(<var>fcn_id</var>)</em></dt>
<dd><p>Remove the named function or function handle with the given identifier
from the list of functions to call periodically when Octave is waiting
for input.
</p>
<p><strong>See also:</strong> <a href="#XREFadd_005finput_005fevent_005fhook">add_input_event_hook</a>.
</p></dd></dl>
<p>Finally, when the parser cannot identify an input token it calls a particular
function to handle this. By default, this is the internal function
<code>"__unimplemented__"</code> which makes suggestions about possible Octave
substitutes for <small>MATLAB</small> functions.
</p>
<a name="XREFmissing_005ffunction_005fhook"></a><dl>
<dt><a name="index-missing_005ffunction_005fhook"></a>Built-in Function: <em><var>val</var> =</em> <strong>missing_function_hook</strong> <em>()</em></dt>
<dt><a name="index-missing_005ffunction_005fhook-1"></a>Built-in Function: <em><var>old_val</var> =</em> <strong>missing_function_hook</strong> <em>(<var>new_val</var>)</em></dt>
<dt><a name="index-missing_005ffunction_005fhook-2"></a>Built-in Function: <em></em> <strong>missing_function_hook</strong> <em>(<var>new_val</var>, "local")</em></dt>
<dd><p>Query or set the internal variable that specifies the function to call when
an unknown identifier is requested.
</p>
<p>When called from inside a function with the <code>"local"</code> option, the
variable is changed locally for the function and any subroutines it calls.
The original variable value is restored when exiting the function.
</p>
<p><strong>See also:</strong> <a href="Missing-Components.html#XREFmissing_005fcomponent_005fhook">missing_component_hook</a>.
</p></dd></dl>
<hr>
<div class="header">
<p>
Previous: <a href="Keywords.html#Keywords" accesskey="p" rel="prev">Keywords</a>, Up: <a href="Grammar-and-Parser.html#Grammar-and-Parser" accesskey="u" rel="up">Grammar and Parser</a> [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="Concept-Index.html#Concept-Index" title="Index" rel="index">Index</a>]</p>
</div>
</body>
</html>
|