Constraint_y.cpp File Reference

#include "ace/OS_NS_string.h"
#include "orbsvcs/Trader/Constraint_Interpreter.h"
#include "orbsvcs/Trader/Constraint_Nodes.h"

Include dependency graph for Constraint_y.cpp:

Include dependency graph

Go to the source code of this file.

Classes

struct  yytoktype

Defines

#define TAO_GT   257
#define TAO_GE   258
#define TAO_LT   259
#define TAO_LE   260
#define TAO_EQ   261
#define TAO_NE   262
#define TAO_EXIST   263
#define TAO_AND   264
#define TAO_OR   265
#define TAO_NOT   266
#define TAO_IN   267
#define TAO_TWIDDLE   268
#define TAO_BOOLEAN   269
#define TAO_PLUS   270
#define TAO_MINUS   271
#define TAO_MULT   272
#define TAO_DIV   273
#define TAO_UMINUS   274
#define TAO_NUMBER   275
#define TAO_RPAREN   276
#define TAO_LPAREN   277
#define TAO_IDENT   278
#define TAO_STRING   279
#define TAO_UNKNOWN   280
#define TAO_UNSIGNED   281
#define TAO_SIGNED   282
#define TAO_DOUBLE   283
#define TAO_CONSTRAINT   284
#define TAO_SEQUENCE   285
#define TAO_WITH   286
#define TAO_MAX   287
#define TAO_MIN   288
#define TAO_FIRST   289
#define TAO_RANDOM   290
#define yyclearin   yychar = -1
#define yyerrok   yyerrflag = 0
#define YYMAXDEPTH   150
#define YYERRCODE   256
#define YYNPROD   38
#define YYLAST   93
#define YYDEBUG   0 /* don't allow debugging */
#define YYERROR   goto yyerrlab
#define YYACCEPT   return(0)
#define YYABORT   return(1)
#define YYBACKUP(newtoken, newvalue)
#define YYRECOVERING()   (!!yyerrflag)
#define YYNEW(type)   malloc(sizeof(type) * yynewmax)
#define YYCOPY(to, from, type)   (type *) ACE_OS::memcpy(to, (char *) from, yynewmax * sizeof(type))
#define YYENLARGE(from, type)   (type *) realloc((char *) from, yynewmax * sizeof(type))
#define YYFLAG   (-10000000)
#define YYLEX()   yylex()

Typedefs

typedef int yytabelem
typedef yytoktype yytoktype

Functions

int yylex (void)
int yyparse (void)

Variables

int yychar
int yyerrflag
YYSTYPE yylval
YYSTYPE yyval
int yy_yys [YYMAXDEPTH]
int * yys = yy_yys
YYSTYPE yy_yyv [YYMAXDEPTH]
YYSTYPEyyv = yy_yyv
int yymaxdepth = YYMAXDEPTH
yytabelem yyexca []
yytabelem yyact []
yytabelem yypact []
yytabelem yypgo []
yytabelem yyr1 []
yytabelem yyr2 []
yytabelem yychk []
yytabelem yydef []
int yydebug
YYSTYPEyypv
int * yyps
int yystate
int yytmp
int yynerrs


Define Documentation

#define TAO_AND   264
 

Definition at line 30 of file Constraint_y.cpp.

#define TAO_BOOLEAN   269
 

Definition at line 35 of file Constraint_y.cpp.

#define TAO_CONSTRAINT   284
 

Definition at line 50 of file Constraint_y.cpp.

#define TAO_DIV   273
 

Definition at line 39 of file Constraint_y.cpp.

#define TAO_DOUBLE   283
 

Definition at line 49 of file Constraint_y.cpp.

#define TAO_EQ   261
 

Definition at line 27 of file Constraint_y.cpp.

#define TAO_EXIST   263
 

Definition at line 29 of file Constraint_y.cpp.

#define TAO_FIRST   289
 

Definition at line 55 of file Constraint_y.cpp.

#define TAO_GE   258
 

Definition at line 24 of file Constraint_y.cpp.

#define TAO_GT   257
 

Definition at line 23 of file Constraint_y.cpp.

#define TAO_IDENT   278
 

Definition at line 44 of file Constraint_y.cpp.

#define TAO_IN   267
 

Definition at line 33 of file Constraint_y.cpp.

#define TAO_LE   260
 

Definition at line 26 of file Constraint_y.cpp.

#define TAO_LPAREN   277
 

Definition at line 43 of file Constraint_y.cpp.

#define TAO_LT   259
 

Definition at line 25 of file Constraint_y.cpp.

#define TAO_MAX   287
 

Definition at line 53 of file Constraint_y.cpp.

#define TAO_MIN   288
 

Definition at line 54 of file Constraint_y.cpp.

#define TAO_MINUS   271
 

Definition at line 37 of file Constraint_y.cpp.

#define TAO_MULT   272
 

Definition at line 38 of file Constraint_y.cpp.

#define TAO_NE   262
 

Definition at line 28 of file Constraint_y.cpp.

#define TAO_NOT   266
 

Definition at line 32 of file Constraint_y.cpp.

#define TAO_NUMBER   275
 

Definition at line 41 of file Constraint_y.cpp.

#define TAO_OR   265
 

Definition at line 31 of file Constraint_y.cpp.

#define TAO_PLUS   270
 

Definition at line 36 of file Constraint_y.cpp.

#define TAO_RANDOM   290
 

Definition at line 56 of file Constraint_y.cpp.

#define TAO_RPAREN   276
 

Definition at line 42 of file Constraint_y.cpp.

#define TAO_SEQUENCE   285
 

Definition at line 51 of file Constraint_y.cpp.

#define TAO_SIGNED   282
 

Definition at line 48 of file Constraint_y.cpp.

#define TAO_STRING   279
 

Definition at line 45 of file Constraint_y.cpp.

#define TAO_TWIDDLE   268
 

Definition at line 34 of file Constraint_y.cpp.

#define TAO_UMINUS   274
 

Definition at line 40 of file Constraint_y.cpp.

#define TAO_UNKNOWN   280
 

Definition at line 46 of file Constraint_y.cpp.

#define TAO_UNSIGNED   281
 

Definition at line 47 of file Constraint_y.cpp.

#define TAO_WITH   286
 

Definition at line 52 of file Constraint_y.cpp.

#define YYABORT   return(1)
 

Definition at line 269 of file Constraint_y.cpp.

Referenced by yyparse().

#define YYACCEPT   return(0)
 

Definition at line 268 of file Constraint_y.cpp.

Referenced by yyparse().

#define YYBACKUP newtoken,
newvalue   ) 
 

Value:

{\
        if ( yychar >= 0 || ( yyr2[ yytmp ] >> 1 ) != 1 )\
        {\
                yyerror( "syntax error - cannot backup" );\
                goto yyerrlab;\
        }\
        yychar = newtoken;\
        yystate = *yyps;\
        yylval = newvalue;\
        goto yynewstate;\
}

Definition at line 270 of file Constraint_y.cpp.

#define yyclearin   yychar = -1
 

Definition at line 74 of file Constraint_y.cpp.

#define YYCOPY to,
from,
type   )     (type *) ACE_OS::memcpy(to, (char *) from, yynewmax * sizeof(type))
 

Definition at line 284 of file Constraint_y.cpp.

Referenced by yyparse().

#define YYDEBUG   0 /* don't allow debugging */
 

Definition at line 166 of file Constraint_y.cpp.

#define YYENLARGE from,
type   )     (type *) realloc((char *) from, yynewmax * sizeof(type))
 

Definition at line 286 of file Constraint_y.cpp.

Referenced by yyparse().

#define YYERRCODE   256
 

Definition at line 92 of file Constraint_y.cpp.

Referenced by yyparse().

#define yyerrok   yyerrflag = 0
 

Definition at line 75 of file Constraint_y.cpp.

#define YYERROR   goto yyerrlab
 

Definition at line 267 of file Constraint_y.cpp.

#define YYFLAG   (-10000000)
 

Definition at line 300 of file Constraint_y.cpp.

Referenced by yyparse().

#define YYLAST   93
 

Definition at line 104 of file Constraint_y.cpp.

Referenced by yyparse().

 
#define YYLEX  )     yylex()
 

YYNMBCHARS

Definition at line 357 of file Constraint_y.cpp.

Referenced by yyparse().

#define YYMAXDEPTH   150
 

Definition at line 82 of file Constraint_y.cpp.

Referenced by yyparse().

#define YYNEW type   )     malloc(sizeof(type) * yynewmax)
 

Definition at line 283 of file Constraint_y.cpp.

Referenced by yyparse().

#define YYNPROD   38
 

Definition at line 103 of file Constraint_y.cpp.

 
#define YYRECOVERING  )     (!!yyerrflag)
 

Definition at line 282 of file Constraint_y.cpp.


Typedef Documentation

typedef int yytabelem
 

Definition at line 80 of file Constraint_y.cpp.

typedef struct yytoktype yytoktype
 


Function Documentation

int yylex void   ) 
 

Referenced by TAO_Interpreter::build_tree().

int yyparse void   ) 
 

YYNMBCHARS

Definition at line 364 of file Constraint_y.cpp.

References YYSTYPE::constraint_, yytoktype::t_val, TAO_AND, TAO_CONSTRAINT, TAO_DIV, TAO_EQ, TAO_EXIST, TAO_FIRST, TAO_GE, TAO_GT, TAO_IN, TAO_LE, TAO_LT, TAO_MAX, TAO_MIN, TAO_MINUS, TAO_MULT, TAO_NE, TAO_NOT, TAO_OR, TAO_PLUS, TAO_RANDOM, TAO_TWIDDLE, TAO_UMINUS, TAO_WITH, YYABORT, YYACCEPT, yyact, yychar, yychk, YYCOPY, yydebug, yydef, YYENLARGE, YYERRCODE, yyerrflag, yyerror, yyexca, YYFLAG, YYLAST, YYLEX, yylval, YYMAXDEPTH, yymaxdepth, yynerrs, YYNEW, yypact, yypgo, yyps, yypv, yyr1, yyr2, yys, yystate, yytmp, yyv, and yyval.

00367 {
00368         register YYSTYPE *yypvt = 0;    /* top of value stack for $vars */
00369 
00370 #if defined(__cplusplus) || defined(lint)
00371 /*
00372         hacks to please C++ and lint - goto's inside switch should never be
00373         executed; yypvt is set to 0 to avoid "used before set" warning.
00374 */
00375         static int __yaccpar_lint_hack__ = 0;
00376         switch (__yaccpar_lint_hack__)
00377         {
00378                 case 1: goto yyerrlab;
00379                 case 2: goto yynewstate;
00380         }
00381         yypvt = 0;
00382 #endif
00383 
00384         /*
00385         ** Initialize externals - yyparse may be called more than once
00386         */
00387         yypv = &yyv[-1];
00388         yyps = &yys[-1];
00389         yystate = 0;
00390         yytmp = 0;
00391         yynerrs = 0;
00392         yyerrflag = 0;
00393         yychar = -1;
00394 
00395 #if YYMAXDEPTH <= 0
00396         if (yymaxdepth <= 0)
00397         {
00398                 if ((yymaxdepth = YYEXPAND(0)) <= 0)
00399                 {
00400                         yyerror("yacc initialization error");
00401                         YYABORT;
00402                 }
00403         }
00404 #endif
00405 
00406         {
00407                 register YYSTYPE *yy_pv;        /* top of value stack */
00408                 register int *yy_ps;            /* top of state stack */
00409                 register int yy_state;          /* current state */
00410                 register int  yy_n;             /* internal state number info */
00411         goto yystack;   /* moved from 6 lines above to here to please C++ */
00412 
00413                 /*
00414                 ** get globals into registers.
00415                 ** branch to here only if YYBACKUP was called.
00416                 */
00417         yynewstate:
00418                 yy_pv = yypv;
00419                 yy_ps = yyps;
00420                 yy_state = yystate;
00421                 goto yy_newstate;
00422 
00423                 /*
00424                 ** get globals into registers.
00425                 ** either we just started, or we just finished a reduction
00426                 */
00427         yystack:
00428                 yy_pv = yypv;
00429                 yy_ps = yyps;
00430                 yy_state = yystate;
00431 
00432                 /*
00433                 ** top of for (;;) loop while no reductions done
00434                 */
00435         yy_stack:
00436                 /*
00437                 ** put a state and value onto the stacks
00438                 */
00439 #if YYDEBUG
00440                 /*
00441                 ** if debugging, look up token value in list of value vs.
00442                 ** name pairs.  0 and negative (-1) are special values.
00443                 ** Note: linear search is used since time is not a real
00444                 ** consideration while debugging.
00445                 */
00446                 if ( yydebug )
00447                 {
00448                         register int yy_i;
00449 
00450                         printf( "State %d, token ", yy_state );
00451                         if ( yychar == 0 )
00452                                 printf( "end-of-file\n" );
00453                         else if ( yychar < 0 )
00454                                 printf( "-none-\n" );
00455                         else
00456                         {
00457                                 for ( yy_i = 0; yytoks[yy_i].t_val >= 0;
00458                                         yy_i++ )
00459                                 {
00460                                         if ( yytoks[yy_i].t_val == yychar )
00461                                                 break;
00462                                 }
00463                                 printf( "%s\n", yytoks[yy_i].t_name );
00464                         }
00465                 }
00466 #endif /* YYDEBUG */
00467                 if ( ++yy_ps >= &yys[ yymaxdepth ] )    /* room on stack? */
00468                 {
00469                         /*
00470                         ** reallocate and recover.  Note that pointers
00471                         ** have to be reset, or bad things will happen
00472                         */
00473                         int yyps_index = (yy_ps - yys);
00474                         int yypv_index = (yy_pv - yyv);
00475                         int yypvt_index = (yypvt - yyv);
00476                         int yynewmax;
00477 #ifdef YYEXPAND
00478                         yynewmax = YYEXPAND(yymaxdepth);
00479 #else
00480                         yynewmax = 2 * yymaxdepth;      /* double table size */
00481                         if (yymaxdepth == YYMAXDEPTH)   /* first time growth */
00482                         {
00483                                 char *newyys = (char *)YYNEW(int);
00484                                 char *newyyv = (char *)YYNEW(YYSTYPE);
00485                                 if (newyys != 0 && newyyv != 0)
00486                                 {
00487                                         yys = YYCOPY(newyys, yys, int);
00488                                         yyv = YYCOPY(newyyv, yyv, YYSTYPE);
00489                                 }
00490                                 else
00491                                         yynewmax = 0;   /* failed */
00492                         }
00493                         else                            /* not first time */
00494                         {
00495                                 yys = YYENLARGE(yys, int);
00496                                 yyv = YYENLARGE(yyv, YYSTYPE);
00497                                 if (yys == 0 || yyv == 0)
00498                                         yynewmax = 0;   /* failed */
00499                         }
00500 #endif
00501                         if (yynewmax <= yymaxdepth)     /* tables not expanded */
00502                         {
00503                                 yyerror( "yacc stack overflow" );
00504                                 YYABORT;
00505                         }
00506                         yymaxdepth = yynewmax;
00507 
00508                         yy_ps = yys + yyps_index;
00509                         yy_pv = yyv + yypv_index;
00510                         yypvt = yyv + yypvt_index;
00511                 }
00512                 *yy_ps = yy_state;
00513                 *++yy_pv = yyval;
00514 
00515                 /*
00516                 ** we have a new state - find out what to do
00517                 */
00518         yy_newstate:
00519                 if ( ( yy_n = yypact[ yy_state ] ) <= YYFLAG )
00520                         goto yydefault;         /* simple state */
00521 #if YYDEBUG
00522                 /*
00523                 ** if debugging, need to mark whether new token grabbed
00524                 */
00525                 yytmp = yychar < 0;
00526 #endif
00527                 if ( ( yychar < 0 ) && ( ( yychar = YYLEX() ) < 0 ) )
00528                         yychar = 0;             /* reached EOF */
00529 #if YYDEBUG
00530                 if ( yydebug && yytmp )
00531                 {
00532                         register int yy_i;
00533 
00534                         printf( "Received token " );
00535                         if ( yychar == 0 )
00536                                 printf( "end-of-file\n" );
00537                         else if ( yychar < 0 )
00538                                 printf( "-none-\n" );
00539                         else
00540                         {
00541                                 for ( yy_i = 0; yytoks[yy_i].t_val >= 0;
00542                                         yy_i++ )
00543                                 {
00544                                         if ( yytoks[yy_i].t_val == yychar )
00545                                                 break;
00546                                 }
00547                                 printf( "%s\n", yytoks[yy_i].t_name );
00548                         }
00549                 }
00550 #endif /* YYDEBUG */
00551                 if ( ( ( yy_n += yychar ) < 0 ) || ( yy_n >= YYLAST ) )
00552                         goto yydefault;
00553                 if ( yychk[ yy_n = yyact[ yy_n ] ] == yychar )  /*valid shift*/
00554                 {
00555                         yychar = -1;
00556                         yyval = yylval;
00557                         yy_state = yy_n;
00558                         if ( yyerrflag > 0 )
00559                                 yyerrflag--;
00560                         goto yy_stack;
00561                 }
00562 
00563         yydefault:
00564                 if ( ( yy_n = yydef[ yy_state ] ) == -2 )
00565                 {
00566 #if YYDEBUG
00567                         yytmp = yychar < 0;
00568 #endif
00569                         if ( ( yychar < 0 ) && ( ( yychar = YYLEX() ) < 0 ) )
00570                                 yychar = 0;             /* reached EOF */
00571 #if YYDEBUG
00572                         if ( yydebug && yytmp )
00573                         {
00574                                 register int yy_i;
00575 
00576                                 printf( "Received token " );
00577                                 if ( yychar == 0 )
00578                                         printf( "end-of-file\n" );
00579                                 else if ( yychar < 0 )
00580                                         printf( "-none-\n" );
00581                                 else
00582                                 {
00583                                         for ( yy_i = 0;
00584                                                 yytoks[yy_i].t_val >= 0;
00585                                                 yy_i++ )
00586                                         {
00587                                                 if ( yytoks[yy_i].t_val
00588                                                         == yychar )
00589                                                 {
00590                                                         break;
00591                                                 }
00592                                         }
00593                                         printf( "%s\n", yytoks[yy_i].t_name );
00594                                 }
00595                         }
00596 #endif /* YYDEBUG */
00597                         /*
00598                         ** look through exception table
00599                         */
00600                         {
00601                                 register int *yyxi = yyexca;
00602 
00603                                 while ( ( *yyxi != -1 ) ||
00604                                         ( yyxi[1] != yy_state ) )
00605                                 {
00606                                         yyxi += 2;
00607                                 }
00608                                 while ( ( *(yyxi += 2) >= 0 ) &&
00609                                         ( *yyxi != yychar ) )
00610                                         ;
00611                                 if ( ( yy_n = yyxi[1] ) < 0 )
00612                                         YYACCEPT;
00613                         }
00614                 }
00615 
00616                 /*
00617                 ** check for syntax error
00618                 */
00619                 if ( yy_n == 0 )        /* have an error */
00620                 {
00621                         /* no worry about speed here! */
00622                         switch ( yyerrflag )
00623                         {
00624                         case 0:         /* new error */
00625                                 yyerror( "syntax error" );
00626                                 goto skip_init;
00627                         yyerrlab:
00628                                 /*
00629                                 ** get globals into registers.
00630                                 ** we have a user generated syntax type error
00631                                 */
00632                                 yy_pv = yypv;
00633                                 yy_ps = yyps;
00634                                 yy_state = yystate;
00635                         skip_init:
00636                                 yynerrs++;
00637                                 /* FALLTHRU */
00638                         case 1:
00639                         case 2:         /* incompletely recovered error */
00640                                         /* try again... */
00641                                 yyerrflag = 3;
00642                                 /*
00643                                 ** find state where "error" is a legal
00644                                 ** shift action
00645                                 */
00646                                 while ( yy_ps >= yys )
00647                                 {
00648                                         yy_n = yypact[ *yy_ps ] + YYERRCODE;
00649                                         if ( yy_n >= 0 && yy_n < YYLAST &&
00650                                                 yychk[yyact[yy_n]] == YYERRCODE)                                        {
00651                                                 /*
00652                                                 ** simulate shift of "error"
00653                                                 */
00654                                                 yy_state = yyact[ yy_n ];
00655                                                 goto yy_stack;
00656                                         }
00657                                         /*
00658                                         ** current state has no shift on
00659                                         ** "error", pop stack
00660                                         */
00661 #if YYDEBUG
00662 #       define _POP_ "Error recovery pops state %d, uncovers state %d\n"
00663                                         if ( yydebug )
00664                                                 printf( _POP_, *yy_ps,
00665                                                         yy_ps[-1] );
00666 #       undef _POP_
00667 #endif
00668                                         yy_ps--;
00669                                         yy_pv--;
00670                                 }
00671                                 /*
00672                                 ** there is no state on stack with "error" as
00673                                 ** a valid shift.  give up.
00674                                 */
00675                                 YYABORT;
00676                         case 3:         /* no shift yet; eat a token */
00677 #if YYDEBUG
00678                                 /*
00679                                 ** if debugging, look up token in list of
00680                                 ** pairs.  0 and negative shouldn't occur,
00681                                 ** but since timing doesn't matter when
00682                                 ** debugging, it doesn't hurt to leave the
00683                                 ** tests here.
00684                                 */
00685                                 if ( yydebug )
00686                                 {
00687                                         register int yy_i;
00688 
00689                                         printf( "Error recovery discards " );
00690                                         if ( yychar == 0 )
00691                                                 printf( "token end-of-file\n" );
00692                                         else if ( yychar < 0 )
00693                                                 printf( "token -none-\n" );
00694                                         else
00695                                         {
00696                                                 for ( yy_i = 0;
00697                                                         yytoks[yy_i].t_val >= 0;
00698                                                         yy_i++ )
00699                                                 {
00700                                                         if ( yytoks[yy_i].t_val
00701                                                                 == yychar )
00702                                                         {
00703                                                                 break;
00704                                                         }
00705                                                 }
00706                                                 printf( "token %s\n",
00707                                                         yytoks[yy_i].t_name );
00708                                         }
00709                                 }
00710 #endif /* YYDEBUG */
00711                                 if ( yychar == 0 )      /* reached EOF. quit */
00712                                         YYABORT;
00713                                 yychar = -1;
00714                                 goto yy_newstate;
00715                         }
00716                 }/* end if ( yy_n == 0 ) */
00717                 /*
00718                 ** reduction by production yy_n
00719                 ** put stack tops, etc. so things right after switch
00720                 */
00721 #if YYDEBUG
00722                 /*
00723                 ** if debugging, print the string that is the user's
00724                 ** specification of the reduction which is just about
00725                 ** to be done.
00726                 */
00727                 if ( yydebug )
00728                         printf( "Reduce by (%d) \"%s\"\n",
00729                                 yy_n, yyreds[ yy_n ] );
00730 #endif
00731                 yytmp = yy_n;                   /* value to switch over */
00732                 yypvt = yy_pv;                  /* $vars top of value stack */
00733                 /*
00734                 ** Look in goto table for next state
00735                 ** Sorry about using yy_state here as temporary
00736                 ** register variable, but why not, if it works...
00737                 ** If yyr2[ yy_n ] doesn't have the low order bit
00738                 ** set, then there is no action to be done for
00739                 ** this reduction.  So, no saving & unsaving of
00740                 ** registers done.  The only difference between the
00741                 ** code just after the if and the body of the if is
00742                 ** the goto yy_stack in the body.  This way the test
00743                 ** can be made before the choice of what to do is needed.
00744                 */
00745                 {
00746                         /* length of production doubled with extra bit */
00747                         register int yy_len = yyr2[ yy_n ];
00748 
00749                         if ( !( yy_len & 01 ) )
00750                         {
00751                                 yy_len >>= 1;
00752                                 yyval = ( yy_pv -= yy_len )[1]; /* $$ = $1 */
00753                                 yy_state = yypgo[ yy_n = yyr1[ yy_n ] ] +
00754                                         *( yy_ps -= yy_len ) + 1;
00755                                 if ( yy_state >= YYLAST ||
00756                                         yychk[ yy_state =
00757                                         yyact[ yy_state ] ] != -yy_n )
00758                                 {
00759                                         yy_state = yyact[ yypgo[ yy_n ] ];
00760                                 }
00761                                 goto yy_stack;
00762                         }
00763                         yy_len >>= 1;
00764                         yyval = ( yy_pv -= yy_len )[1]; /* $$ = $1 */
00765                         yy_state = yypgo[ yy_n = yyr1[ yy_n ] ] +
00766                                 *( yy_ps -= yy_len ) + 1;
00767                         if ( yy_state >= YYLAST ||
00768                                 yychk[ yy_state = yyact[ yy_state ] ] != -yy_n )
00769                         {
00770                                 yy_state = yyact[ yypgo[ yy_n ] ];
00771                         }
00772                 }
00773                                         /* save until reenter driver code */
00774                 yystate = yy_state;
00775                 yyps = yy_ps;
00776                 yypv = yy_pv;
00777         }
00778         /*
00779         ** code supplied by user is placed in this switch
00780         */
00781         switch( yytmp )
00782         {
00783                 
00784 case 1:
00785 
00786 { yyval.constraint_ = new TAO_Unary_Constraint(TAO_CONSTRAINT, yypvt[-0].constraint_); } break;
00787 case 2:
00788 
00789 { yyval.constraint_ = yypvt[-0].constraint_; } break;
00790 case 3:
00791 
00792 { yyval.constraint_ = new TAO_Unary_Constraint(TAO_MIN, yypvt[-0].constraint_); } break;
00793 case 4:
00794 
00795 { yyval.constraint_ = new TAO_Unary_Constraint(TAO_MAX, yypvt[-0].constraint_); } break;
00796 case 5:
00797 
00798 { yyval.constraint_ = new TAO_Unary_Constraint(TAO_WITH, yypvt[-0].constraint_); } break;
00799 case 6:
00800 
00801 { yyval.constraint_ = new TAO_Noop_Constraint(TAO_FIRST); } break;
00802 case 7:
00803 
00804 { yyval.constraint_ = new TAO_Noop_Constraint(TAO_RANDOM); } break;
00805 case 8:
00806 
00807 { yyval.constraint_ = new TAO_Binary_Constraint(TAO_OR, yypvt[-2].constraint_, yypvt[-0].constraint_); } break;
00808 case 9:
00809 
00810 { yyval.constraint_ = yypvt[-0].constraint_; } break;
00811 case 10:
00812 
00813 { yyval.constraint_ = new TAO_Binary_Constraint(TAO_AND, yypvt[-2].constraint_, yypvt[-0].constraint_); } break;
00814 case 11:
00815 
00816 { yyval.constraint_ = yypvt[-0].constraint_; } break;
00817 case 12:
00818 
00819 { yyval.constraint_ = new TAO_Binary_Constraint(TAO_EQ, yypvt[-2].constraint_, yypvt[-0].constraint_); } break;
00820 case 13:
00821 
00822 { yyval.constraint_ = new TAO_Binary_Constraint(TAO_NE, yypvt[-2].constraint_, yypvt[-0].constraint_); } break;
00823 case 14:
00824 
00825 { yyval.constraint_ = new TAO_Binary_Constraint(TAO_GT, yypvt[-2].constraint_, yypvt[-0].constraint_); } break;
00826 case 15:
00827 
00828 { yyval.constraint_ = new TAO_Binary_Constraint(TAO_GE, yypvt[-2].constraint_, yypvt[-0].constraint_); } break;
00829 case 16:
00830 
00831 { yyval.constraint_ = new TAO_Binary_Constraint(TAO_LT, yypvt[-2].constraint_, yypvt[-0].constraint_); } break;
00832 case 17:
00833 
00834 { yyval.constraint_ = new TAO_Binary_Constraint(TAO_LE, yypvt[-2].constraint_, yypvt[-0].constraint_); } break;
00835 case 18:
00836 
00837 { yyval.constraint_ = yypvt[-0].constraint_; } break;
00838 case 19:
00839 
00840 { yyval.constraint_ = new TAO_Binary_Constraint(TAO_IN, yypvt[-2].constraint_, yypvt[-0].constraint_); } break;
00841 case 20:
00842 
00843 { yyval.constraint_ = yypvt[-0].constraint_; } break;
00844 case 21:
00845 
00846 { yyval.constraint_ = new TAO_Binary_Constraint(TAO_TWIDDLE, yypvt[-2].constraint_, yypvt[-0].constraint_); } break;
00847 case 22:
00848 
00849 { yyval.constraint_ = yypvt[-0].constraint_; } break;
00850 case 23:
00851 
00852 { yyval.constraint_ = new TAO_Binary_Constraint(TAO_PLUS, yypvt[-2].constraint_, yypvt[-0].constraint_); } break;
00853 case 24:
00854 
00855 { yyval.constraint_ = new TAO_Binary_Constraint(TAO_MINUS, yypvt[-2].constraint_, yypvt[-0].constraint_); } break;
00856 case 25:
00857 
00858 { yyval.constraint_ = yypvt[-0].constraint_; } break;
00859 case 26:
00860 
00861 { yyval.constraint_ = new TAO_Binary_Constraint(TAO_MULT, yypvt[-2].constraint_, yypvt[-0].constraint_); } break;
00862 case 27:
00863 
00864 { yyval.constraint_ = new TAO_Binary_Constraint(TAO_DIV, yypvt[-2].constraint_, yypvt[-0].constraint_); } break;
00865 case 28:
00866 
00867 { yyval.constraint_ = yypvt[-0].constraint_; } break;
00868 case 29:
00869 
00870 { yyval.constraint_ = new TAO_Unary_Constraint(TAO_NOT, yypvt[-0].constraint_); } break;
00871 case 30:
00872 
00873 { yyval.constraint_ = yypvt[-0].constraint_; } break;
00874 case 31:
00875 
00876 { yyval.constraint_ = yypvt[-1].constraint_; } break;
00877 case 32:
00878 
00879 { yyval.constraint_ = new TAO_Unary_Constraint(TAO_EXIST, yypvt[-0].constraint_); } break;
00880 case 33:
00881 
00882 { yyval.constraint_ = yypvt[-0].constraint_; } break;
00883 case 34:
00884 
00885 { yyval.constraint_ = yypvt[-0].constraint_; } break;
00886 case 35:
00887 
00888 { yyval.constraint_ = new TAO_Unary_Constraint(TAO_UMINUS, yypvt[-0].constraint_); } break;
00889 case 36:
00890 
00891 { yyval.constraint_ = yypvt[-0].constraint_; } break;
00892 case 37:
00893 
00894 { yyval.constraint_ = yypvt[-0].constraint_; } break;
00895 
00896         }
00897         goto yystack;           /* reset registers in driver code */
00898 }
00899 


Variable Documentation

int yy_yys[YYMAXDEPTH]
 

Definition at line 85 of file Constraint_y.cpp.

YYSTYPE yy_yyv[YYMAXDEPTH]
 

Definition at line 86 of file Constraint_y.cpp.

yytabelem yyact[]
 

Initial value:

{

    19,    54,    44,    16,    45,    19,    24,    37,    22,    38,
    39,    24,    21,    22,    18,    20,    23,    21,    25,    18,
    20,    23,    36,     7,     6,     5,     8,     9,    19,    60,
    26,    16,    40,    41,    24,    25,    22,    38,    39,    15,
    21,    11,    18,    20,    23,    32,    33,    34,    35,    30,
    31,    14,    10,    17,    13,    12,     4,     3,     1,     2,
     0,     0,     0,     0,     0,    27,    28,    29,     0,     0,
    42,     0,    48,    49,    50,    51,    52,    53,    43,    47,
    58,    59,    46,     0,     0,     0,     0,     0,     0,     0,
    56,    57,    55 }

Definition at line 105 of file Constraint_y.cpp.

Referenced by yyparse().

int yychar
 

Definition at line 313 of file Constraint_y.cpp.

Referenced by yyparse().

yytabelem yychk[]
 

Initial value:

{

-10000000,    -1,    -3,    -2,    -4,   288,   287,   286,   289,   290,
    -5,    -6,    -7,    -8,    -9,   -10,   266,   -11,   277,   263,
   278,   275,   271,   279,   269,   265,   264,    -3,    -3,    -3,
   261,   262,   257,   258,   259,   260,   267,   268,   270,   271,
   272,   273,   -11,    -3,   278,   275,    -4,    -5,    -6,    -6,
    -6,    -6,    -6,    -6,   278,    -8,    -9,    -9,   -10,   -10,
   276 }

Definition at line 142 of file Constraint_y.cpp.

Referenced by yyparse().

int yydebug
 

Definition at line 295 of file Constraint_y.cpp.

Referenced by yyparse().

yytabelem yydef[]
 

Initial value:

{

     0,    -2,     1,     2,     9,     0,     0,     0,     6,     7,
    11,    18,    20,    22,    25,    28,     0,    30,     0,     0,
    33,    34,     0,    36,    37,     0,     0,     3,     4,     5,
     0,     0,     0,     0,     0,     0,     0,     0,     0,     0,
     0,     0,    29,     0,    32,    35,     8,    10,    12,    13,
    14,    15,    16,    17,    19,    21,    23,    24,    26,    27,
    31 }

Definition at line 151 of file Constraint_y.cpp.

Referenced by yyparse().

int yyerrflag
 

Definition at line 312 of file Constraint_y.cpp.

Referenced by yyparse().

yytabelem yyexca[]
 

Initial value:

{
-1, 1,
        0, -1,
        -2, 0,
        }

Definition at line 98 of file Constraint_y.cpp.

Referenced by yyparse().

YYSTYPE yylval
 

Definition at line 78 of file Constraint_y.cpp.

Referenced by yyparse().

int yymaxdepth = YYMAXDEPTH [static]
 

Definition at line 91 of file Constraint_y.cpp.

Referenced by yyparse().

int yynerrs
 

Definition at line 311 of file Constraint_y.cpp.

Referenced by yyparse().

yytabelem yypact[]
 

Initial value:

{

  -263,-10000000,  -230,-10000000,  -234,  -235,  -235,  -235,-10000000,-10000000,
-10000000,  -212,  -245,  -261,  -240,-10000000,  -258,-10000000,  -235,  -276,
-10000000,-10000000,  -271,-10000000,-10000000,  -235,  -235,  -230,  -230,  -230,
  -235,  -235,  -235,  -235,  -235,  -235,  -277,  -235,  -235,  -235,
  -235,  -235,-10000000,  -247,-10000000,-10000000,  -234,-10000000,-10000000,-10000000,
-10000000,-10000000,-10000000,-10000000,-10000000,  -233,  -240,  -240,-10000000,-10000000,
-10000000 }

Definition at line 117 of file Constraint_y.cpp.

Referenced by yyparse().

yytabelem yypgo[]
 

Initial value:

{

     0,    58,    57,    59,    56,    52,    41,    55,    54,    51,
    39,    53 }

Definition at line 126 of file Constraint_y.cpp.

Referenced by yyparse().

int* yyps
 

Definition at line 306 of file Constraint_y.cpp.

Referenced by yyparse().

YYSTYPE* yypv
 

Definition at line 305 of file Constraint_y.cpp.

Referenced by yyparse().

yytabelem yyr1[]
 

Initial value:

{

     0,     1,     1,     2,     2,     2,     2,     2,     3,     3,
     4,     4,     5,     5,     5,     5,     5,     5,     5,     6,
     6,     7,     7,     8,     8,     8,     9,     9,     9,    10,
    10,    11,    11,    11,    11,    11,    11,    11 }

Definition at line 130 of file Constraint_y.cpp.

Referenced by yyparse().

yytabelem yyr2[]
 

Initial value:

{

     0,     3,     3,     5,     5,     5,     3,     3,     7,     3,
     7,     3,     7,     7,     7,     7,     7,     7,     3,     7,
     3,     7,     3,     7,     7,     3,     7,     7,     3,     5,
     3,     7,     5,     3,     3,     5,     3,     3 }

Definition at line 136 of file Constraint_y.cpp.

Referenced by yyparse().

int * yys = yy_yys
 

Definition at line 85 of file Constraint_y.cpp.

Referenced by yyparse().

int yystate
 

Definition at line 308 of file Constraint_y.cpp.

Referenced by yyparse().

int yytmp
 

Definition at line 309 of file Constraint_y.cpp.

Referenced by yyparse().

YYSTYPE * yyv = yy_yyv
 

Definition at line 86 of file Constraint_y.cpp.

Referenced by yyparse().

YYSTYPE yyval
 

Definition at line 79 of file Constraint_y.cpp.

Referenced by TAO_Interpreter::build_tree(), and yyparse().


Generated on Thu Nov 9 14:00:08 2006 for TAO_CosTrader by doxygen 1.3.6