Navigation

Operators and Keywords

Function List:

C++ API

parse.cc File Reference

#include <cassert>
#include <cstdio>
#include <iostream>
#include <map>
#include <sstream>
#include "Cell.h"
#include "Matrix.h"
#include "cmd-edit.h"
#include "cmd-hist.h"
#include "file-ops.h"
#include "file-stat.h"
#include "oct-env.h"
#include "oct-time.h"
#include "quit.h"
#include "comment-list.h"
#include "defaults.h"
#include "defun.h"
#include "dirfns.h"
#include "dynamic-ld.h"
#include "error.h"
#include "input.h"
#include "lex.h"
#include "load-path.h"
#include "oct-hist.h"
#include "oct-map.h"
#include "ov-fcn-handle.h"
#include "ov-usr-fcn.h"
#include "ov-null-mat.h"
#include "toplev.h"
#include "pager.h"
#include "parse.h"
#include "pt-all.h"
#include "pt-eval.h"
#include "symtab.h"
#include "token.h"
#include "unwind-prot.h"
#include "utils.h"
#include "variables.h"
#include <stdio.h>

Include dependency graph for parse.cc:


Classes

union  YYSTYPE
union  yyalloc
class  stdio_stream_reader

Defines

#define YYBISON   1
#define YYBISON_VERSION   "2.3"
#define YYSKELETON_NAME   "yacc.c"
#define YYPURE   0
#define YYLSP_NEEDED   0
#define yyparse   octave_parse
#define yylex   octave_lex
#define yyerror   octave_error
#define yylval   octave_lval
#define yychar   octave_char
#define yydebug   octave_debug
#define yynerrs   octave_nerrs
#define ADD_EQ   258
#define SUB_EQ   259
#define MUL_EQ   260
#define DIV_EQ   261
#define LEFTDIV_EQ   262
#define POW_EQ   263
#define EMUL_EQ   264
#define EDIV_EQ   265
#define ELEFTDIV_EQ   266
#define EPOW_EQ   267
#define AND_EQ   268
#define OR_EQ   269
#define LSHIFT_EQ   270
#define RSHIFT_EQ   271
#define LSHIFT   272
#define RSHIFT   273
#define EXPR_AND_AND   274
#define EXPR_OR_OR   275
#define EXPR_AND   276
#define EXPR_OR   277
#define EXPR_NOT   278
#define EXPR_LT   279
#define EXPR_LE   280
#define EXPR_EQ   281
#define EXPR_NE   282
#define EXPR_GE   283
#define EXPR_GT   284
#define LEFTDIV   285
#define EMUL   286
#define EDIV   287
#define ELEFTDIV   288
#define EPLUS   289
#define EMINUS   290
#define QUOTE   291
#define TRANSPOSE   292
#define PLUS_PLUS   293
#define MINUS_MINUS   294
#define POW   295
#define EPOW   296
#define NUM   297
#define IMAG_NUM   298
#define STRUCT_ELT   299
#define NAME   300
#define END   301
#define DQ_STRING   302
#define SQ_STRING   303
#define FOR   304
#define WHILE   305
#define DO   306
#define UNTIL   307
#define IF   308
#define ELSEIF   309
#define ELSE   310
#define SWITCH   311
#define CASE   312
#define OTHERWISE   313
#define BREAK   314
#define CONTINUE   315
#define FUNC_RET   316
#define UNWIND   317
#define CLEANUP   318
#define TRY   319
#define CATCH   320
#define GLOBAL   321
#define STATIC   322
#define FCN_HANDLE   323
#define PROPERTIES   324
#define METHODS   325
#define EVENTS   326
#define METAQUERY   327
#define SUPERCLASSREF   328
#define GET   329
#define SET   330
#define END_OF_INPUT   331
#define LEXICAL_ERROR   332
#define FCN   333
#define SCRIPT_FILE   334
#define FUNCTION_FILE   335
#define CLASSDEF   336
#define CLOSE_BRACE   337
#define UNARY   338
#define YYDEBUG   1
#define ABORT_PARSE
#define YYERROR_VERBOSE   0
#define YYTOKEN_TABLE   0
#define yystype   YYSTYPE
#define YYSTYPE_IS_DECLARED   1
#define YYSTYPE_IS_TRIVIAL   1
#define YYSIZE_T   unsigned int
#define YYSIZE_MAXIMUM   ((YYSIZE_T) -1)
#define YY_(msgid)   msgid
#define YYUSE(e)   ((void) (e))
#define YYID(n)   (n)
#define YYSTACK_ALLOC   YYMALLOC
#define YYSTACK_FREE   YYFREE
#define YYSTACK_ALLOC_MAXIMUM   YYSIZE_MAXIMUM
#define YYMALLOC   malloc
#define YYFREE   free
#define YYSTACK_GAP_MAXIMUM   (sizeof (union yyalloc) - 1)
#define YYSTACK_BYTES(N)
#define YYCOPY(To, From, Count)
#define YYSTACK_RELOCATE(Stack)
#define YYFINAL   123
#define YYLAST   1189
#define YYNTOKENS   101
#define YYNNTS   102
#define YYNRULES   258
#define YYNSTATES   461
#define YYUNDEFTOK   2
#define YYMAXUTOK   338
#define YYTRANSLATE(YYX)   ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
#define YYPACT_NINF   -332
#define YYTABLE_NINF   -259
#define yyerrok   (yyerrstatus = 0)
#define yyclearin   (yychar = YYEMPTY)
#define YYEMPTY   (-2)
#define YYEOF   0
#define YYACCEPT   goto yyacceptlab
#define YYABORT   goto yyabortlab
#define YYERROR   goto yyerrorlab
#define YYFAIL   goto yyerrlab
#define YYRECOVERING()   (!!yyerrstatus)
#define YYBACKUP(Token, Value)
#define YYTERROR   1
#define YYERRCODE   256
#define YYRHSLOC(Rhs, K)   ((Rhs)[K])
#define YYLLOC_DEFAULT(Current, Rhs, N)
#define YY_LOCATION_PRINT(File, Loc)   ((void) 0)
#define YYLEX   yylex ()
#define YYFPRINTF   fprintf
#define YYDPRINTF(Args)
#define YY_SYMBOL_PRINT(Title, Type, Value, Location)
#define YY_STACK_PRINT(Bottom, Top)
#define YY_REDUCE_PRINT(Rule)
#define YYINITDEPTH   200
#define YYMAXDEPTH   10000
#define YYPOPSTACK(N)   (yyvsp -= (N), yyssp -= (N))

Typedefs

typedef unsigned char yytype_uint8
typedef short int yytype_int8
typedef unsigned short int yytype_uint16
typedef short int yytype_int16

Enumerations

enum  yytokentype {
  ADD_EQ = 258, SUB_EQ = 259, MUL_EQ = 260, DIV_EQ = 261,
  LEFTDIV_EQ = 262, POW_EQ = 263, EMUL_EQ = 264, EDIV_EQ = 265,
  ELEFTDIV_EQ = 266, EPOW_EQ = 267, AND_EQ = 268, OR_EQ = 269,
  LSHIFT_EQ = 270, RSHIFT_EQ = 271, LSHIFT = 272, RSHIFT = 273,
  EXPR_AND_AND = 274, EXPR_OR_OR = 275, EXPR_AND = 276, EXPR_OR = 277,
  EXPR_NOT = 278, EXPR_LT = 279, EXPR_LE = 280, EXPR_EQ = 281,
  EXPR_NE = 282, EXPR_GE = 283, EXPR_GT = 284, LEFTDIV = 285,
  EMUL = 286, EDIV = 287, ELEFTDIV = 288, EPLUS = 289,
  EMINUS = 290, QUOTE = 291, TRANSPOSE = 292, PLUS_PLUS = 293,
  MINUS_MINUS = 294, POW = 295, EPOW = 296, NUM = 297,
  IMAG_NUM = 298, STRUCT_ELT = 299, NAME = 300, END = 301,
  DQ_STRING = 302, SQ_STRING = 303, FOR = 304, WHILE = 305,
  DO = 306, UNTIL = 307, IF = 308, ELSEIF = 309,
  ELSE = 310, SWITCH = 311, CASE = 312, OTHERWISE = 313,
  BREAK = 314, CONTINUE = 315, FUNC_RET = 316, UNWIND = 317,
  CLEANUP = 318, TRY = 319, CATCH = 320, GLOBAL = 321,
  STATIC = 322, FCN_HANDLE = 323, PROPERTIES = 324, METHODS = 325,
  EVENTS = 326, METAQUERY = 327, SUPERCLASSREF = 328, GET = 329,
  SET = 330, END_OF_INPUT = 331, LEXICAL_ERROR = 332, FCN = 333,
  SCRIPT_FILE = 334, FUNCTION_FILE = 335, CLASSDEF = 336, CLOSE_BRACE = 337,
  UNARY = 338, ADD_EQ = 258, SUB_EQ = 259, MUL_EQ = 260,
  DIV_EQ = 261, LEFTDIV_EQ = 262, POW_EQ = 263, EMUL_EQ = 264,
  EDIV_EQ = 265, ELEFTDIV_EQ = 266, EPOW_EQ = 267, AND_EQ = 268,
  OR_EQ = 269, LSHIFT_EQ = 270, RSHIFT_EQ = 271, LSHIFT = 272,
  RSHIFT = 273, EXPR_AND_AND = 274, EXPR_OR_OR = 275, EXPR_AND = 276,
  EXPR_OR = 277, EXPR_NOT = 278, EXPR_LT = 279, EXPR_LE = 280,
  EXPR_EQ = 281, EXPR_NE = 282, EXPR_GE = 283, EXPR_GT = 284,
  LEFTDIV = 285, EMUL = 286, EDIV = 287, ELEFTDIV = 288,
  EPLUS = 289, EMINUS = 290, QUOTE = 291, TRANSPOSE = 292,
  PLUS_PLUS = 293, MINUS_MINUS = 294, POW = 295, EPOW = 296,
  NUM = 297, IMAG_NUM = 298, STRUCT_ELT = 299, NAME = 300,
  END = 301, DQ_STRING = 302, SQ_STRING = 303, FOR = 304,
  WHILE = 305, DO = 306, UNTIL = 307, IF = 308,
  ELSEIF = 309, ELSE = 310, SWITCH = 311, CASE = 312,
  OTHERWISE = 313, BREAK = 314, CONTINUE = 315, FUNC_RET = 316,
  UNWIND = 317, CLEANUP = 318, TRY = 319, CATCH = 320,
  GLOBAL = 321, STATIC = 322, FCN_HANDLE = 323, PROPERTIES = 324,
  METHODS = 325, EVENTS = 326, METAQUERY = 327, SUPERCLASSREF = 328,
  GET = 329, SET = 330, END_OF_INPUT = 331, LEXICAL_ERROR = 332,
  FCN = 333, SCRIPT_FILE = 334, FUNCTION_FILE = 335, CLASSDEF = 336,
  CLOSE_BRACE = 337, UNARY = 338
}

Functions

int yyparse ()
std::string get_help_from_file (const std::string &nm, bool &symbol_found, std::string &file)
std::string get_help_from_file (const std::string &nm, bool &symbol_found)
std::string lookup_autoload (const std::string &nm)
string_vector autoloaded_functions (void)
string_vector reverse_lookup_autoload (const std::string &nm)
octave_functionload_fcn_from_file (const std::string &file_name, const std::string &dir_name, const std::string &dispatch_type, const std::string &fcn_name, bool autoload)
 DEFUN (autoload, args,,"-*- texinfo -*-\n\ @deftypefn {Built-in Function} {} autoload (@var{function}, @var{file})\n\ Define @var{function} to autoload from @var{file}.\n\ \n\ The second argument, @var{file}, should be an absolute file name or\n\ a file name in the same directory as the function or script from which\n\ the autoload command was run. @var{file} should not depend on the\n\ Octave load path.\n\ \n\ Normally, calls to @code{autoload} appear in PKG_ADD script files that\n\ are evaluated when a directory is added to the Octave's load path. To\n\ avoid having to hardcode directory names in @var{file}, if @var{file}\n\ is in the same directory as the PKG_ADD script then\n\ \n\ @example\n\ autoload (\"foo\", \"bar.oct\");\n\ @end example\n\ \n\ will load the function @code{foo} from the file @code{bar.oct}. The above\n\ when @code{bar.oct} is not in the same directory or uses like\n\ \n\ @example\n\ autoload (\"foo\", file_in_loadpath (\"bar.oct\"))\n\ @end example\n\ \n\ @noindent\n\ are strongly discouraged, as their behavior might be unpredictable.\n\ \n\ With no arguments, return a structure containing the current autoload map.\n\ @seealso{PKG_ADD}\n\ @end deftypefn")
void source_file (const std::string &file_name, const std::string &context, bool verbose, bool require_file, const std::string &warn_for)
 DEFUN (mfilename, args,,"-*- texinfo -*-\n\ @deftypefn {Built-in Function} {} mfilename ()\n\ @deftypefnx {Built-in Function} {} mfilename (@code{\"fullpath\"})\n\ @deftypefnx {Built-in Function} {} mfilename (@code{\"fullpathext\"})\n\ Return the name of the currently executing file. At the top-level,\n\ return the empty string. Given the argument @code{\"fullpath\"},\n\ include the directory part of the file name, but not the extension.\n\ Given the argument @code{\"fullpathext\"}, include the directory part\n\ of the file name and the extension.\n\ @end deftypefn")
 DEFUN (source, args,,"-*- texinfo -*-\n\ @deftypefn {Built-in Function} {} source (@var{file})\n\ Parse and execute the contents of @var{file}. This is equivalent to\n\ executing commands from a script file, but without requiring the file to\n\ be named @file{@var{file}.m}.\n\ @end deftypefn")
octave_value_list feval (const std::string &name, const octave_value_list &args, int nargout)
octave_value_list feval (octave_function *fcn, const octave_value_list &args, int nargout)
octave_value_list feval (const octave_value_list &args, int nargout)
 DEFUN (feval, args, nargout,"-*- texinfo -*-\n\ @deftypefn {Built-in Function} {} feval (@var{name}, @dots{})\n\ Evaluate the function named @var{name}. Any arguments after the first\n\ are passed on to the named function. For example,\n\ \n\ @example\n\ feval (\"acos\", -1)\n\ @result{} 3.1416\n\ @end example\n\ \n\ @noindent\n\ calls the function @code{acos} with the argument @samp{-1}.\n\ \n\ The function @code{feval} is necessary in order to be able to write\n\ functions that call user-supplied functions, because Octave does not\n\ have a way to declare a pointer to a function (like C) or to declare a\n\ special kind of variable that can be used to hold the name of a function\n\ (like @code{EXTERNAL} in Fortran). Instead, you must refer to functions\n\ by name, and use @code{feval} to call them.\n\ @end deftypefn")
octave_value_list eval_string (const std::string &s, bool silent, int &parse_status, int nargout)
octave_value eval_string (const std::string &s, bool silent, int &parse_status)
 DEFUN (eval, args, nargout,"-*- texinfo -*-\n\ @deftypefn {Built-in Function} {} eval (@var{try}, @var{catch})\n\ Parse the string @var{try} and evaluate it as if it were an Octave\n\ program. If that fails, evaluate the optional string @var{catch}.\n\ The string @var{try} is evaluated in the current context,\n\ so any results remain available after @code{eval} returns.\n\ \n\ The following example makes the variable @var{a} with the approximate\n\ value 3.1416 available.\n\ \n\ @example\n\ eval(\"a = acos(-1);\");\n\ @end example\n\ \n\ If an error occurs during the evaluation of @var{try} the @var{catch}\n\ string is evaluated, as the following example shows:\n\ \n\ @example\n\ eval ('error (\"This is a bad example\");',\n\ 'printf (\"This error occurred:\\n%s\\n\", lasterr ());');\n\ @print{} This error occurred:\n\ This is a bad example\n\ @end example\n\ @end deftypefn")
 DEFUN (assignin, args,,"-*- texinfo -*-\n\ @deftypefn {Built-in Function} {} assignin (@var{context}, @var{varname}, @var{value})\n\ Assign @var{value} to @var{varname} in context @var{context}, which\n\ may be either @code{\"base\"} or @code{\"caller\"}.\n\ @end deftypefn")
 DEFUN (evalin, args, nargout,"-*- texinfo -*-\n\ @deftypefn {Built-in Function} {} evalin (@var{context}, @var{try}, @var{catch})\n\ Like @code{eval}, except that the expressions are evaluated in the\n\ context @var{context}, which may be either @code{\"caller\"} or\n\ @code{\"base\"}.\n\ @end deftypefn")
 DEFUN (__parser_debug_flag__, args, nargout,"-*- texinfo -*-\n\ @deftypefn {Built-in Function} {@var{old_val} =} __parser_debug_flag__ (@var{new_val}))\n\ Undocumented internal function.\n\ @end deftypefn")

Variables

int input_line_number = 1
int current_input_column = 1
std::stack< std::stringhelp_buf
bool line_editing = true
bool reading_startup_message_printed = false
bool input_from_startup_file = false
std::stack
< symbol_table::scope_id
symtab_context
std::string current_class_name
int yytype
YYSTYPE const *const yyvaluep
yytype_int16top
int yyrule
int yychar
YYSTYPE yylval
int yynerrs

Define Documentation

#define ABORT_PARSE

Value:

do \
    { \
      global_command = 0; \
      yyerrok; \
      if (! symtab_context.empty ()) \
        { \
          symbol_table::set_scope (symtab_context.top ()); \
          symtab_context.pop (); \
        } \
      if (interactive || forced_interactive) \
        YYACCEPT; \
      else \
        YYABORT; \
    } \
  while (0)

#define ADD_EQ   258

#define AND_EQ   268

#define BREAK   314

#define CASE   312

#define CATCH   320

#define CLASSDEF   336

#define CLEANUP   318

#define CLOSE_BRACE   337

#define CONTINUE   315

#define DIV_EQ   261

#define DO   306

#define DQ_STRING   302

#define EDIV   287

#define EDIV_EQ   265

#define ELEFTDIV   288

#define ELEFTDIV_EQ   266

#define ELSE   310

#define ELSEIF   309

#define EMINUS   290

#define EMUL   286

#define EMUL_EQ   264

#define END   301

#define END_OF_INPUT   331

#define EPLUS   289

#define EPOW   296

#define EPOW_EQ   267

#define EVENTS   326

#define EXPR_AND   276

#define EXPR_AND_AND   274

#define EXPR_EQ   281

#define EXPR_GE   283

#define EXPR_GT   284

#define EXPR_LE   280

#define EXPR_LT   279

#define EXPR_NE   282

#define EXPR_NOT   278

#define EXPR_OR   277

#define EXPR_OR_OR   275

#define FCN   333

#define FCN_HANDLE   323

#define FOR   304

#define FUNC_RET   316

#define FUNCTION_FILE   335

#define GET   329

#define GLOBAL   321

#define IF   308

#define IMAG_NUM   298

#define LEFTDIV   285

#define LEFTDIV_EQ   262

#define LEXICAL_ERROR   332

#define LSHIFT   272

#define LSHIFT_EQ   270

#define METAQUERY   327

#define METHODS   325

#define MINUS_MINUS   294

#define MUL_EQ   260

#define NAME   300

#define NUM   297

#define OR_EQ   269

#define OTHERWISE   313

#define PLUS_PLUS   293

#define POW   295

#define POW_EQ   263

#define PROPERTIES   324

#define QUOTE   291

#define RSHIFT   273

#define RSHIFT_EQ   271

#define SCRIPT_FILE   334

#define SET   330

#define SQ_STRING   303

#define STATIC   322

#define STRUCT_ELT   299

#define SUB_EQ   259

#define SUPERCLASSREF   328

#define SWITCH   311

#define TRANSPOSE   292

#define TRY   319

#define UNARY   338

#define UNTIL   307

#define UNWIND   317

#define WHILE   305

#define YY_ ( msgid   )     msgid

#define YY_LOCATION_PRINT ( File,
Loc   )     ((void) 0)

#define YY_REDUCE_PRINT ( Rule   ) 

Value:

do {                                    \
  if (yydebug)                          \
    yy_reduce_print (yyvsp, Rule); \
} while (YYID (0))

#define YY_STACK_PRINT ( Bottom,
Top   ) 

Value:

do {                                                            \
  if (yydebug)                                                  \
    yy_stack_print ((Bottom), (Top));                           \
} while (YYID (0))

#define YY_SYMBOL_PRINT ( Title,
Type,
Value,
Location   ) 

Value:

do {                                                                      \
  if (yydebug)                                                            \
    {                                                                     \
      YYFPRINTF (stderr, "%s ", Title);                                   \
      yy_symbol_print (stderr,                                            \
                  Type, Value); \
      YYFPRINTF (stderr, "\n");                                           \
    }                                                                     \
} while (YYID (0))

#define YYABORT   goto yyabortlab

#define YYACCEPT   goto yyacceptlab

#define YYBACKUP ( Token,
Value   ) 

Value:

do                                                              \
  if (yychar == YYEMPTY && yylen == 1)                          \
    {                                                           \
      yychar = (Token);                                         \
      yylval = (Value);                                         \
      yytoken = YYTRANSLATE (yychar);                           \
      YYPOPSTACK (1);                                           \
      goto yybackup;                                            \
    }                                                           \
  else                                                          \
    {                                                           \
      yyerror (YY_("syntax error: cannot back up")); \
      YYERROR;                                                  \
    }                                                           \
while (YYID (0))

#define YYBISON   1

#define YYBISON_VERSION   "2.3"

#define yychar   octave_char

#define yyclearin   (yychar = YYEMPTY)

#define YYCOPY ( To,
From,
Count   ) 

Value:

do                                      \
        {                                       \
          YYSIZE_T yyi;                         \
          for (yyi = 0; yyi < (Count); yyi++)   \
            (To)[yyi] = (From)[yyi];            \
        }                                       \
      while (YYID (0))

#define YYDEBUG   1

#define yydebug   octave_debug

#define YYDPRINTF ( Args   ) 

Value:

do {                                            \
  if (yydebug)                                  \
    YYFPRINTF Args;                             \
} while (YYID (0))

#define YYEMPTY   (-2)

#define YYEOF   0

#define YYERRCODE   256

#define yyerrok   (yyerrstatus = 0)

#define YYERROR   goto yyerrorlab

#define yyerror   octave_error

#define YYERROR_VERBOSE   0

#define YYFAIL   goto yyerrlab

#define YYFINAL   123

#define YYFPRINTF   fprintf

#define YYFREE   free

#define YYID (  )     (n)

#define YYINITDEPTH   200

#define YYLAST   1189

#define YYLEX   yylex ()

#define yylex   octave_lex

#define YYLLOC_DEFAULT ( Current,
Rhs,
 ) 

Value:

do                                                                      \
      if (YYID (N))                                                    \
        {                                                               \
          (Current).first_line   = YYRHSLOC (Rhs, 1).first_line;        \
          (Current).first_column = YYRHSLOC (Rhs, 1).first_column;      \
          (Current).last_line    = YYRHSLOC (Rhs, N).last_line;         \
          (Current).last_column  = YYRHSLOC (Rhs, N).last_column;       \
        }                                                               \
      else                                                              \
        {                                                               \
          (Current).first_line   = (Current).last_line   =              \
            YYRHSLOC (Rhs, 0).last_line;                                \
          (Current).first_column = (Current).last_column =              \
            YYRHSLOC (Rhs, 0).last_column;                              \
        }                                                               \
    while (YYID (0))

#define YYLSP_NEEDED   0

#define yylval   octave_lval

#define YYMALLOC   malloc

#define YYMAXDEPTH   10000

#define YYMAXUTOK   338

#define yynerrs   octave_nerrs

#define YYNNTS   102

#define YYNRULES   258

#define YYNSTATES   461

#define YYNTOKENS   101

#define YYPACT_NINF   -332

#define yyparse   octave_parse

#define YYPOPSTACK (  )     (yyvsp -= (N), yyssp -= (N))

#define YYPURE   0

 
#define YYRECOVERING (  )     (!!yyerrstatus)

#define YYRHSLOC ( Rhs,
 )     ((Rhs)[K])

#define YYSIZE_MAXIMUM   ((YYSIZE_T) -1)

#define YYSIZE_T   unsigned int

#define YYSKELETON_NAME   "yacc.c"

#define YYSTACK_ALLOC   YYMALLOC

#define YYSTACK_ALLOC_MAXIMUM   YYSIZE_MAXIMUM

#define YYSTACK_BYTES (  ) 

Value:

((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \
      + YYSTACK_GAP_MAXIMUM)

#define YYSTACK_FREE   YYFREE

#define YYSTACK_GAP_MAXIMUM   (sizeof (union yyalloc) - 1)

#define YYSTACK_RELOCATE ( Stack   ) 

Value:

do                                                                      \
      {                                                                 \
        YYSIZE_T yynewbytes;                                            \
        YYCOPY (&yyptr->Stack, Stack, yysize);                          \
        Stack = &yyptr->Stack;                                          \
        yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
        yyptr += yynewbytes / sizeof (*yyptr);                          \
      }                                                                 \
    while (YYID (0))

#define yystype   YYSTYPE

#define YYSTYPE_IS_DECLARED   1

#define YYSTYPE_IS_TRIVIAL   1

#define YYTABLE_NINF   -259

#define YYTERROR   1

#define YYTOKEN_TABLE   0

#define YYTRANSLATE ( YYX   )     ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)

#define YYUNDEFTOK   2

#define YYUSE ( e   )     ((void) (e))


Typedef Documentation

typedef short int yytype_int16

typedef short int yytype_int8

typedef unsigned short int yytype_uint16

typedef unsigned char yytype_uint8


Enumeration Type Documentation

Enumerator:
ADD_EQ 
SUB_EQ 
MUL_EQ 
DIV_EQ 
LEFTDIV_EQ 
POW_EQ 
EMUL_EQ 
EDIV_EQ 
ELEFTDIV_EQ 
EPOW_EQ 
AND_EQ 
OR_EQ 
LSHIFT_EQ 
RSHIFT_EQ 
LSHIFT 
RSHIFT 
EXPR_AND_AND 
EXPR_OR_OR 
EXPR_AND 
EXPR_OR 
EXPR_NOT 
EXPR_LT 
EXPR_LE 
EXPR_EQ 
EXPR_NE 
EXPR_GE 
EXPR_GT 
LEFTDIV 
EMUL 
EDIV 
ELEFTDIV 
EPLUS 
EMINUS 
QUOTE 
TRANSPOSE 
PLUS_PLUS 
MINUS_MINUS 
POW 
EPOW 
NUM 
IMAG_NUM 
STRUCT_ELT 
NAME 
END 
DQ_STRING 
SQ_STRING 
FOR 
WHILE 
DO 
UNTIL 
IF 
ELSEIF 
ELSE 
SWITCH 
CASE 
OTHERWISE 
BREAK 
CONTINUE 
FUNC_RET 
UNWIND 
CLEANUP 
TRY 
CATCH 
GLOBAL 
STATIC 
FCN_HANDLE 
PROPERTIES 
METHODS 
EVENTS 
METAQUERY 
SUPERCLASSREF 
GET 
SET 
END_OF_INPUT 
LEXICAL_ERROR 
FCN 
SCRIPT_FILE 
FUNCTION_FILE 
CLASSDEF 
CLOSE_BRACE 
UNARY 
ADD_EQ 
SUB_EQ 
MUL_EQ 
DIV_EQ 
LEFTDIV_EQ 
POW_EQ 
EMUL_EQ 
EDIV_EQ 
ELEFTDIV_EQ 
EPOW_EQ 
AND_EQ 
OR_EQ 
LSHIFT_EQ 
RSHIFT_EQ 
LSHIFT 
RSHIFT 
EXPR_AND_AND 
EXPR_OR_OR 
EXPR_AND 
EXPR_OR 
EXPR_NOT 
EXPR_LT 
EXPR_LE 
EXPR_EQ 
EXPR_NE 
EXPR_GE 
EXPR_GT 
LEFTDIV 
EMUL 
EDIV 
ELEFTDIV 
EPLUS 
EMINUS 
QUOTE 
TRANSPOSE 
PLUS_PLUS 
MINUS_MINUS 
POW 
EPOW 
NUM 
IMAG_NUM 
STRUCT_ELT 
NAME 
END 
DQ_STRING 
SQ_STRING 
FOR 
WHILE 
DO 
UNTIL 
IF 
ELSEIF 
ELSE 
SWITCH 
CASE 
OTHERWISE 
BREAK 
CONTINUE 
FUNC_RET 
UNWIND 
CLEANUP 
TRY 
CATCH 
GLOBAL 
STATIC 
FCN_HANDLE 
PROPERTIES 
METHODS 
EVENTS 
METAQUERY 
SUPERCLASSREF 
GET 
SET 
END_OF_INPUT 
LEXICAL_ERROR 
FCN 
SCRIPT_FILE 
FUNCTION_FILE 
CLASSDEF 
CLOSE_BRACE 
UNARY 


Function Documentation

string_vector autoloaded_functions ( void   ) 

DEFUN ( __parser_debug_flag__  ,
args  ,
nargout   
)

DEFUN ( evalin  ,
args  ,
nargout   
)

DEFUN ( assignin  ,
args   
)

DEFUN ( eval  ,
args  ,
nargout   
)

DEFUN ( feval  ,
args  ,
nargout   
)

DEFUN ( source  ,
args   
)

DEFUN ( mfilename  ,
args   
)

DEFUN ( autoload  ,
args   
)

octave_value eval_string ( const std::string s,
bool  silent,
int parse_status 
)

octave_value_list eval_string ( const std::string s,
bool  silent,
int parse_status,
int  nargout 
)

octave_value_list feval ( const octave_value_list args,
int  nargout 
)

octave_value_list feval ( octave_function fcn,
const octave_value_list args,
int  nargout 
)

octave_value_list feval ( const std::string name,
const octave_value_list args,
int  nargout 
)

std::string get_help_from_file ( const std::string nm,
bool symbol_found 
)

std::string get_help_from_file ( const std::string nm,
bool symbol_found,
std::string file 
)

octave_function* load_fcn_from_file ( const std::string file_name,
const std::string dir_name,
const std::string dispatch_type,
const std::string fcn_name,
bool  autoload 
)

std::string lookup_autoload ( const std::string nm  ) 

string_vector reverse_lookup_autoload ( const std::string nm  ) 

void source_file ( const std::string file_name,
const std::string context,
bool  verbose,
bool  require_file,
const std::string warn_for 
)

int yyparse (  ) 


Variable Documentation

std::stack<std::string> help_buf