<html lang="en"> <head> <title>Parser - GNU Octave</title> <meta http-equiv="Content-Type" content="text/html"> <meta name="description" content="GNU Octave"> <meta name="generator" content="makeinfo 4.13"> <link title="Top" rel="start" href="index.html#Top"> <link rel="up" href="Grammar-and-Parser.html#Grammar-and-Parser" title="Grammar and Parser"> <link rel="prev" href="Keywords.html#Keywords" title="Keywords"> <link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage"> <meta http-equiv="Content-Style-Type" content="text/css"> <style type="text/css"><!-- pre.display { font-family:inherit } pre.format { font-family:inherit } pre.smalldisplay { font-family:inherit; font-size:smaller } pre.smallformat { font-family:inherit; font-size:smaller } pre.smallexample { font-size:smaller } pre.smalllisp { font-size:smaller } span.sc { font-variant:small-caps } span.roman { font-family:serif; font-weight:normal; } span.sansserif { font-family:sans-serif; font-weight:normal; } --></style> </head> <body> <div class="node"> <a name="Parser"></a> <p> Previous: <a rel="previous" accesskey="p" href="Keywords.html#Keywords">Keywords</a>, Up: <a rel="up" accesskey="u" href="Grammar-and-Parser.html#Grammar-and-Parser">Grammar and Parser</a> <hr> </div> <h3 class="section">I.2 Parser</h3> <p><a name="index-parser-3464"></a> 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>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. <!-- add_input_event_hook src/input.cc --> <p><a name="doc_002dadd_005finput_005fevent_005fhook"></a> <div class="defun"> — Built-in Function: <b>add_input_event_hook</b> (<var>fcn</var>)<var><a name="index-add_005finput_005fevent_005fhook-3465"></a></var><br> — Built-in Function: <b>add_input_event_hook</b> (<var>fcn, data</var>)<var><a name="index-add_005finput_005fevent_005fhook-3466"></a></var><br> <blockquote><p>Add the named function <var>fcn</var> to the list of functions to call periodically when Octave is waiting for input. The function should have the form <pre class="example"> <var>fcn</var> (<var>data</var>) </pre> <p>If <var>data</var> is omitted, Octave calls the function without any arguments. <!-- Texinfo @sp should work but in practice produces ugly results for HTML. --> <!-- A simple blank line produces the correct behavior. --> <!-- @sp 1 --> <p class="noindent"><strong>See also:</strong> <a href="doc_002dremove_005finput_005fevent_005fhook.html#doc_002dremove_005finput_005fevent_005fhook">remove_input_event_hook</a>. </p></blockquote></div> <!-- remove_input_event_hook src/input.cc --> <p><a name="doc_002dremove_005finput_005fevent_005fhook"></a> <div class="defun"> — Built-in Function: <b>remove_input_event_hook</b> (<var>fcn</var>)<var><a name="index-remove_005finput_005fevent_005fhook-3467"></a></var><br> <blockquote><p>Remove the named function <var>fcn</var> from the list of functions to call periodically when Octave is waiting for input. <!-- Texinfo @sp should work but in practice produces ugly results for HTML. --> <!-- A simple blank line produces the correct behavior. --> <!-- @sp 1 --> <p class="noindent"><strong>See also:</strong> <a href="doc_002dadd_005finput_005fevent_005fhook.html#doc_002dadd_005finput_005fevent_005fhook">add_input_event_hook</a>. </p></blockquote></div> <p>Finally, when the parser cannot identify an input token it calls a particular function to handle this. By default, this is the function "unimplemented" which makes suggestions about possible Octave substitutes for <span class="sc">matlab</span> functions. <!-- missing_function_hook src/variables.cc --> <p><a name="doc_002dmissing_005ffunction_005fhook"></a> <div class="defun"> — Built-in Function: <var>val</var> = <b>missing_function_hook</b> ()<var><a name="index-missing_005ffunction_005fhook-3468"></a></var><br> — Built-in Function: <var>old_val</var> = <b>missing_function_hook</b> (<var>new_val</var>)<var><a name="index-missing_005ffunction_005fhook-3469"></a></var><br> — Built-in Function: <b>missing_function_hook</b> (<var>new_val, "local"</var>)<var><a name="index-missing_005ffunction_005fhook-3470"></a></var><br> <blockquote><p>Query or set the internal variable that specifies the function to call when an unknown identifier is requested. <p>When called from inside a function with the "local" 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></blockquote></div> <!-- DO NOT EDIT! Generated automatically by munge-texi.pl. --> </body></html>