summaryrefslogtreecommitdiff
path: root/TAO/orbsvcs/orbsvcs/Trader/Constraint_y.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/orbsvcs/orbsvcs/Trader/Constraint_y.cpp')
-rw-r--r--TAO/orbsvcs/orbsvcs/Trader/Constraint_y.cpp1397
1 files changed, 826 insertions, 571 deletions
diff --git a/TAO/orbsvcs/orbsvcs/Trader/Constraint_y.cpp b/TAO/orbsvcs/orbsvcs/Trader/Constraint_y.cpp
index a47090bb330..4376a5b05ba 100644
--- a/TAO/orbsvcs/orbsvcs/Trader/Constraint_y.cpp
+++ b/TAO/orbsvcs/orbsvcs/Trader/Constraint_y.cpp
@@ -1,645 +1,900 @@
-#ifndef lint
-static char const
-yyrcsid[] = "$FreeBSD: src/usr.bin/yacc/skeleton.c,v 1.28 2000/01/17 02:04:06 bde Exp $";
-#endif
-#include <stdlib.h>
-#define YYBYACC 1
-#define YYMAJOR 1
-#define YYMINOR 9
-#define YYLEX yylex()
-#define YYEMPTY -1
-#define yyclearin (yychar=(YYEMPTY))
-#define yyerrok (yyerrflag=0)
-#define YYRECOVERING() (yyerrflag!=0)
-
-#define YYPREFIX "yy"
- /* $Id$*/
-/* ========================================================================*/
-/**/
-/* = LIBRARY*/
-/* orbsvcs*/
-/* */
-/* = FILENAME*/
-/* constraint.y*/
-/**/
-/* = AUTHOR*/
-/* Seth Widoff <sbw1@cs.wustl.edu>*/
-/**/
-/* ========================================================================*/
+
+ // $Id$
+// ========================================================================
+//
+// = LIBRARY
+// orbsvcs
+//
+// = FILENAME
+// constraint.y
+//
+// = AUTHOR
+// Seth Widoff <sbw1@cs.wustl.edu>
+//
+// ========================================================================
#include "ace/OS_NS_string.h"
-#include "ace/OS_NS_stdlib.h"
#include "orbsvcs/Trader/Constraint_Interpreter.h"
#include "orbsvcs/Trader/Constraint_Nodes.h"
TAO_BEGIN_VERSIONED_NAMESPACE_DECL
-/*#define YYDEBUG 1*/
-#define YYERRCODE 256
-#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_SIGNED 281
-#define TAO_UNSIGNED 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
-const short yylhs[] = { -1,
- 0, 0, 1, 1, 1, 1, 1, 2, 2, 3,
- 3, 4, 4, 4, 4, 4, 4, 4, 5, 5,
- 6, 6, 7, 7, 7, 8, 8, 8, 9, 9,
- 10, 10, 10, 10, 10, 10, 10,
-};
-const short yylen[] = { 2,
- 1, 1, 2, 2, 2, 1, 1, 3, 1, 3,
- 1, 3, 3, 3, 3, 3, 3, 1, 3, 1,
- 3, 1, 3, 3, 1, 3, 3, 1, 2, 1,
- 3, 2, 1, 1, 2, 1, 1,
-};
-const short yydefred[] = { 0,
- 0, 0, 37, 0, 34, 0, 33, 36, 0, 0,
- 0, 6, 7, 0, 2, 0, 0, 11, 0, 0,
- 0, 0, 28, 30, 32, 29, 35, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 31, 0, 10, 14, 15,
- 16, 17, 12, 13, 19, 0, 0, 0, 26, 27,
-};
-const short yydgoto[] = { 14,
- 15, 16, 17, 18, 19, 20, 21, 22, 23, 24,
-};
-const short yysindex[] = { -253,
- -278, -219, 0, -271, 0, -224, 0, 0, -224, -224,
- -224, 0, 0, 0, 0, -256, -252, 0, -195, -244,
- -251, -243, 0, 0, 0, 0, 0, -262, -256, -256,
- -256, -224, -224, -224, -224, -224, -224, -224, -224, -263,
- -224, -224, -224, -224, -224, 0, -252, 0, 0, 0,
- 0, 0, 0, 0, 0, -239, -243, -243, 0, 0,
-};
-const short yyrindex[] = { 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 27, 8, 0, 11, 87,
- 61, 1, 0, 0, 0, 0, 0, 0, 38, 40,
- 43, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 28, 0, 0, 0,
- 0, 0, 0, 0, 0, 74, 21, 41, 0, 0,
-};
-const short yygindex[] = { 0,
- 0, -4, 14, 24, 34, 0, 36, 6, 31, 76,
-};
-#define YYTABLESIZE 363
-const short yytable[] = { 25,
- 25, 28, 32, 27, 29, 30, 31, 9, 32, 1,
- 18, 33, 2, 46, 55, 3, 41, 4, 42, 43,
- 23, 5, 40, 6, 7, 8, 1, 8, 44, 45,
- 42, 43, 9, 10, 11, 12, 13, 5, 1, 4,
- 24, 2, 3, 1, 3, 47, 4, 57, 58, 3,
- 5, 4, 6, 7, 8, 5, 48, 6, 7, 8,
- 22, 34, 35, 36, 37, 38, 39, 49, 50, 51,
- 52, 53, 54, 21, 59, 60, 56, 26, 0, 0,
- 0, 0, 0, 0, 0, 0, 20, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0, 0, 25, 25, 25,
- 25, 25, 25, 0, 25, 25, 0, 25, 25, 0,
- 25, 25, 9, 0, 18, 18, 25, 23, 23, 23,
- 23, 23, 23, 9, 23, 23, 18, 23, 23, 0,
- 23, 23, 8, 0, 0, 0, 23, 24, 24, 24,
- 24, 24, 24, 8, 24, 24, 0, 24, 24, 0,
- 24, 24, 0, 0, 0, 0, 24, 22, 22, 22,
- 22, 22, 22, 0, 22, 22, 0, 22, 0, 0,
- 21, 21, 21, 21, 21, 21, 22, 21, 21, 0,
- 21, 0, 0, 20, 20, 20, 20, 20, 20, 21,
- 20, 20, 0, 0, 0, 0, 0, 0, 0, 0,
- 0, 0, 20,
-};
-const short yycheck[] = { 278,
- 0, 6, 265, 275, 9, 10, 11, 0, 265, 263,
- 0, 264, 266, 276, 278, 269, 268, 271, 270, 271,
- 0, 275, 267, 277, 278, 279, 0, 0, 272, 273,
- 270, 271, 286, 287, 288, 289, 290, 0, 263, 0,
- 0, 266, 0, 263, 269, 32, 271, 42, 43, 269,
- 275, 271, 277, 278, 279, 275, 33, 277, 278, 279,
- 0, 257, 258, 259, 260, 261, 262, 34, 35, 36,
- 37, 38, 39, 0, 44, 45, 41, 2, -1, -1,
- -1, -1, -1, -1, -1, -1, 0, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, 257, 258, 259,
- 260, 261, 262, -1, 264, 265, -1, 267, 268, -1,
- 270, 271, 265, -1, 264, 265, 276, 257, 258, 259,
- 260, 261, 262, 276, 264, 265, 276, 267, 268, -1,
- 270, 271, 265, -1, -1, -1, 276, 257, 258, 259,
- 260, 261, 262, 276, 264, 265, -1, 267, 268, -1,
- 270, 271, -1, -1, -1, -1, 276, 257, 258, 259,
- 260, 261, 262, -1, 264, 265, -1, 267, -1, -1,
- 257, 258, 259, 260, 261, 262, 276, 264, 265, -1,
- 267, -1, -1, 257, 258, 259, 260, 261, 262, 276,
- 264, 265, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, 276,
-};
-#define YYFINAL 14
+//#define YYDEBUG 1
+# 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
+
+#ifdef __cplusplus
+
+#ifndef yyerror
+ void yyerror(const char *);
+#endif
+
+#ifndef yylex
+#ifdef __EXTERN_C__
+ extern "C" { int yylex(void); }
+#else
+ int yylex(void);
+#endif
+#endif
+ int yyparse(void);
+
+#endif
+#define yyclearin yychar = -1
+#define yyerrok yyerrflag = 0
+extern int yychar;
+extern int yyerrflag;
+YYSTYPE yylval;
+YYSTYPE yyval;
+typedef int yytabelem;
+#ifndef YYMAXDEPTH
+#define YYMAXDEPTH 150
+#endif
+#if YYMAXDEPTH > 0
+int yy_yys[YYMAXDEPTH], *yys = yy_yys;
+YYSTYPE yy_yyv[YYMAXDEPTH], *yyv = yy_yyv;
+#else /* user does initial allocation */
+int *yys;
+YYSTYPE *yyv;
+#endif
+static int yymaxdepth = YYMAXDEPTH;
+# define YYERRCODE 256
+
+
+
+
+//extern int yydebug = 1;
+yytabelem yyexca[] ={
+-1, 1,
+ 0, -1,
+ -2, 0,
+ };
+# define YYNPROD 38
+# define YYLAST 93
+yytabelem yyact[]={
+
+ 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 };
+yytabelem yypact[]={
+
+ -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 };
+yytabelem yypgo[]={
+
+ 0, 58, 57, 59, 56, 52, 41, 55, 54, 51,
+ 39, 53 };
+yytabelem yyr1[]={
+
+ 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 };
+yytabelem yyr2[]={
+
+ 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 };
+yytabelem yychk[]={
+
+-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 };
+yytabelem yydef[]={
+
+ 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 };
+typedef struct
+#ifdef __cplusplus
+ yytoktype
+#endif
+{ char *t_name; int t_val; } yytoktype;
#ifndef YYDEBUG
-#define YYDEBUG 0
+# define YYDEBUG 0 /* don't allow debugging */
#endif
-#define YYMAXTOKEN 290
+
#if YYDEBUG
-const char * const yyname[] = {
-"end-of-file",0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,
-0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,"TAO_GT","TAO_GE","TAO_LT",
-"TAO_LE","TAO_EQ","TAO_NE","TAO_EXIST","TAO_AND","TAO_OR","TAO_NOT","TAO_IN",
-"TAO_TWIDDLE","TAO_BOOLEAN","TAO_PLUS","TAO_MINUS","TAO_MULT","TAO_DIV",
-"TAO_UMINUS","TAO_NUMBER","TAO_RPAREN","TAO_LPAREN","TAO_IDENT","TAO_STRING",
-"TAO_UNKNOWN","TAO_SIGNED","TAO_UNSIGNED","TAO_DOUBLE","TAO_CONSTRAINT",
-"TAO_SEQUENCE","TAO_WITH","TAO_MAX","TAO_MIN","TAO_FIRST","TAO_RANDOM",
+
+yytoktype yytoks[] =
+{
+ "TAO_GT", 257,
+ "TAO_GE", 258,
+ "TAO_LT", 259,
+ "TAO_LE", 260,
+ "TAO_EQ", 261,
+ "TAO_NE", 262,
+ "TAO_EXIST", 263,
+ "TAO_AND", 264,
+ "TAO_OR", 265,
+ "TAO_NOT", 266,
+ "TAO_IN", 267,
+ "TAO_TWIDDLE", 268,
+ "TAO_BOOLEAN", 269,
+ "TAO_PLUS", 270,
+ "TAO_MINUS", 271,
+ "TAO_MULT", 272,
+ "TAO_DIV", 273,
+ "TAO_UMINUS", 274,
+ "TAO_NUMBER", 275,
+ "TAO_RPAREN", 276,
+ "TAO_LPAREN", 277,
+ "TAO_IDENT", 278,
+ "TAO_STRING", 279,
+ "TAO_UNKNOWN", 280,
+ "TAO_UNSIGNED", 281,
+ "TAO_SIGNED", 282,
+ "TAO_DOUBLE", 283,
+ "TAO_CONSTRAINT", 284,
+ "TAO_SEQUENCE", 285,
+ "TAO_WITH", 286,
+ "TAO_MAX", 287,
+ "TAO_MIN", 288,
+ "TAO_FIRST", 289,
+ "TAO_RANDOM", 290,
+ "-unknown-", -1 /* ends search */
};
-const char * const yyrule[] = {
-"$accept : constraint",
-"constraint : bool_or",
-"constraint : preference",
-"preference : TAO_MIN bool_or",
-"preference : TAO_MAX bool_or",
-"preference : TAO_WITH bool_or",
-"preference : TAO_FIRST",
-"preference : TAO_RANDOM",
-"bool_or : bool_or TAO_OR bool_and",
-"bool_or : bool_and",
-"bool_and : bool_and TAO_AND bool_compare",
-"bool_and : bool_compare",
-"bool_compare : expr_in TAO_EQ expr_in",
-"bool_compare : expr_in TAO_NE expr_in",
-"bool_compare : expr_in TAO_GT expr_in",
-"bool_compare : expr_in TAO_GE expr_in",
-"bool_compare : expr_in TAO_LT expr_in",
-"bool_compare : expr_in TAO_LE expr_in",
-"bool_compare : expr_in",
-"expr_in : expr_twiddle TAO_IN TAO_IDENT",
-"expr_in : expr_twiddle",
-"expr_twiddle : expr TAO_TWIDDLE expr",
-"expr_twiddle : expr",
-"expr : expr TAO_PLUS term",
-"expr : expr TAO_MINUS term",
-"expr : term",
-"term : term TAO_MULT factor_not",
-"term : term TAO_DIV factor_not",
-"term : factor_not",
-"factor_not : TAO_NOT factor",
-"factor_not : factor",
-"factor : TAO_LPAREN bool_or TAO_RPAREN",
-"factor : TAO_EXIST TAO_IDENT",
-"factor : TAO_IDENT",
-"factor : TAO_NUMBER",
-"factor : TAO_MINUS TAO_NUMBER",
-"factor : TAO_STRING",
-"factor : TAO_BOOLEAN",
+
+char * yyreds[] =
+{
+ "-no such reduction-",
+ "constraint : bool_or",
+ "constraint : preference",
+ "preference : TAO_MIN bool_or",
+ "preference : TAO_MAX bool_or",
+ "preference : TAO_WITH bool_or",
+ "preference : TAO_FIRST",
+ "preference : TAO_RANDOM",
+ "bool_or : bool_or TAO_OR bool_and",
+ "bool_or : bool_and",
+ "bool_and : bool_and TAO_AND bool_compare",
+ "bool_and : bool_compare",
+ "bool_compare : expr_in TAO_EQ expr_in",
+ "bool_compare : expr_in TAO_NE expr_in",
+ "bool_compare : expr_in TAO_GT expr_in",
+ "bool_compare : expr_in TAO_GE expr_in",
+ "bool_compare : expr_in TAO_LT expr_in",
+ "bool_compare : expr_in TAO_LE expr_in",
+ "bool_compare : expr_in",
+ "expr_in : expr_twiddle TAO_IN TAO_IDENT",
+ "expr_in : expr_twiddle",
+ "expr_twiddle : expr TAO_TWIDDLE expr",
+ "expr_twiddle : expr",
+ "expr : expr TAO_PLUS term",
+ "expr : expr TAO_MINUS term",
+ "expr : term",
+ "term : term TAO_MULT factor_not",
+ "term : term TAO_DIV factor_not",
+ "term : factor_not",
+ "factor_not : TAO_NOT factor",
+ "factor_not : factor",
+ "factor : TAO_LPAREN bool_or TAO_RPAREN",
+ "factor : TAO_EXIST TAO_IDENT",
+ "factor : TAO_IDENT",
+ "factor : TAO_NUMBER",
+ "factor : TAO_MINUS TAO_NUMBER",
+ "factor : TAO_STRING",
+ "factor : TAO_BOOLEAN",
};
+#endif /* YYDEBUG */
+
+/*
+ * Copyright (c) 1993 by Sun Microsystems, Inc.
+ */
+
+//#pragma ident "@(#)yaccpar 6.12 93/06/07 SMI"
+
+/*
+** Skeleton parser driver for yacc output
+*/
+
+/*
+** yacc user known macros and defines
+*/
+#define YYERROR goto yyerrlab
+#define YYACCEPT return(0)
+#define YYABORT return(1)
+#define YYBACKUP( newtoken, newvalue )\
+{\
+ if ( yychar >= 0 || ( yyr2[ yytmp ] >> 1 ) != 1 )\
+ {\
+ yyerror( "syntax error - cannot backup" );\
+ goto yyerrlab;\
+ }\
+ yychar = newtoken;\
+ yystate = *yyps;\
+ yylval = newvalue;\
+ goto yynewstate;\
+}
+#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))
+#ifndef YYDEBUG
+# define YYDEBUG 1 /* make debugging available */
#endif
-#if YYDEBUG
-#include <stdio.h>
-#endif
-#ifdef YYSTACKSIZE
-#undef YYMAXDEPTH
-#define YYMAXDEPTH YYSTACKSIZE
-#else
-#ifdef YYMAXDEPTH
-#define YYSTACKSIZE YYMAXDEPTH
+
+/*
+** user known globals
+*/
+int yydebug; /* set to 1 to get debugging */
+
+/*
+** driver internal defines
+*/
+#define YYFLAG (-10000000)
+
+/*
+** global variables used by the parser
+*/
+YYSTYPE *yypv; /* top of value stack */
+int *yyps; /* top of state stack */
+
+int yystate; /* current state */
+int yytmp; /* extra var (lasts between blocks) */
+
+int yynerrs; /* number of errors */
+int yyerrflag; /* error recovery flag */
+int yychar; /* current input token number */
+
+
+
+#ifdef YYNMBCHARS
+#define YYLEX() yycvtok(yylex())
+/*
+** yycvtok - return a token if i is a wchar_t value that exceeds 255.
+** If i<255, i itself is the token. If i>255 but the neither
+** of the 30th or 31st bit is on, i is already a token.
+*/
+#if defined(__STDC__) || defined(__cplusplus)
+int yycvtok(int i)
#else
-#define YYSTACKSIZE 10000
-#define YYMAXDEPTH 10000
+int yycvtok(i) int i;
#endif
-#endif
-#define YYINITSTACKSIZE 200
-int yydebug;
-int yynerrs;
-int yyerrflag;
-int yychar;
-short *yyssp;
-YYSTYPE *yyvsp;
-YYSTYPE yyval;
-YYSTYPE yylval;
-short *yyss;
-short *yysslim;
-YYSTYPE *yyvs;
-int yystacksize;
-
-//extern int yydebug = 1;
-/* allocate initial stack or double stack size, up to YYMAXDEPTH */
-static int yygrowstack()
{
- size_t newsize, i;
- short *newss;
- YYSTYPE *newvs;
-
- if ((newsize = yystacksize) == 0)
- newsize = YYINITSTACKSIZE;
- else if (newsize >= YYMAXDEPTH)
- return -1;
- else if ((newsize *= 2) > YYMAXDEPTH)
- newsize = YYMAXDEPTH;
- i = yyssp - yyss;
- newss = yyss ? (short *)ACE_OS::realloc(yyss, newsize * sizeof *newss) :
- (short *)ACE_OS::malloc(newsize * sizeof *newss);
- if (newss == NULL)
- return -1;
- yyss = newss;
- yyssp = newss + i;
- newvs = yyvs ? (YYSTYPE *)ACE_OS::realloc(yyvs, newsize * sizeof *newvs) :
- (YYSTYPE *)ACE_OS::malloc(newsize * sizeof *newvs);
- if (newvs == NULL)
- return -1;
- yyvs = newvs;
- yyvsp = newvs + i;
- yystacksize = newsize;
- yysslim = yyss + newsize - 1;
- return 0;
+ int first = 0;
+ int last = YYNMBCHARS - 1;
+ int mid;
+ wchar_t j;
+
+ if(i&0x60000000){/*Must convert to a token. */
+ if( yymbchars[last].character < i ){
+ return i;/*Giving up*/
+ }
+ while ((last>=first)&&(first>=0)) {/*Binary search loop*/
+ mid = (first+last)/2;
+ j = yymbchars[mid].character;
+ if( j==i ){/*Found*/
+ return yymbchars[mid].tvalue;
+ }else if( j<i ){
+ first = mid + 1;
+ }else{
+ last = mid -1;
+ }
+ }
+ /*No entry in the table.*/
+ return i;/* Giving up.*/
+ }else{/* i is already a token. */
+ return i;
+ }
}
+#else/*!YYNMBCHARS*/
+#define YYLEX() yylex()
+#endif/*!YYNMBCHARS*/
-#define YYABORT goto yyabort
-#define YYREJECT goto yyabort
-#define YYACCEPT goto yyaccept
-#define YYERROR goto yyerrlab
-
-#ifndef YYPARSE_PARAM
-#if defined(__cplusplus) || __STDC__
-#define YYPARSE_PARAM_ARG void
-#define YYPARSE_PARAM_DECL
-#else /* ! ANSI-C/C++ */
-#define YYPARSE_PARAM_ARG
-#define YYPARSE_PARAM_DECL
-#endif /* ANSI-C/C++ */
-#else /* YYPARSE_PARAM */
-#ifndef YYPARSE_PARAM_TYPE
-#define YYPARSE_PARAM_TYPE void *
+/*
+** yyparse - return 0 if worked, 1 if syntax error not recovered from
+*/
+#if defined(__STDC__) || defined(__cplusplus)
+int yyparse(void)
+#else
+int yyparse()
#endif
-#if defined(__cplusplus) || __STDC__
-#define YYPARSE_PARAM_ARG YYPARSE_PARAM_TYPE YYPARSE_PARAM
-#define YYPARSE_PARAM_DECL
-#else /* ! ANSI-C/C++ */
-#define YYPARSE_PARAM_ARG YYPARSE_PARAM
-#define YYPARSE_PARAM_DECL YYPARSE_PARAM_TYPE YYPARSE_PARAM;
-#endif /* ANSI-C/C++ */
-#endif /* ! YYPARSE_PARAM */
-
-int
-yyparse (YYPARSE_PARAM_ARG)
- YYPARSE_PARAM_DECL
{
- register int yym, yyn, yystate;
-#if YYDEBUG
- register const char *yys;
-
- if ((yys = ACE_OS::getenv("YYDEBUG")))
- {
- yyn = *yys;
- if (yyn >= '0' && yyn <= '9')
- yydebug = yyn - '0';
- }
+ register YYSTYPE *yypvt = 0; /* top of value stack for $vars */
+
+#if defined(__cplusplus) || defined(lint)
+/*
+ hacks to please C++ and lint - goto's inside switch should never be
+ executed; yypvt is set to 0 to avoid "used before set" warning.
+*/
+ static int __yaccpar_lint_hack__ = 0;
+ switch (__yaccpar_lint_hack__)
+ {
+ case 1: goto yyerrlab;
+ case 2: goto yynewstate;
+ }
+ yypvt = 0;
#endif
- yynerrs = 0;
- yyerrflag = 0;
- yychar = (-1);
+ /*
+ ** Initialize externals - yyparse may be called more than once
+ */
+ yypv = &yyv[-1];
+ yyps = &yys[-1];
+ yystate = 0;
+ yytmp = 0;
+ yynerrs = 0;
+ yyerrflag = 0;
+ yychar = -1;
+
+#if YYMAXDEPTH <= 0
+ if (yymaxdepth <= 0)
+ {
+ if ((yymaxdepth = YYEXPAND(0)) <= 0)
+ {
+ yyerror("yacc initialization error");
+ YYABORT;
+ }
+ }
+#endif
+
+ {
+ register YYSTYPE *yy_pv; /* top of value stack */
+ register int *yy_ps; /* top of state stack */
+ register int yy_state; /* current state */
+ register int yy_n; /* internal state number info */
+ goto yystack; /* moved from 6 lines above to here to please C++ */
+
+ /*
+ ** get globals into registers.
+ ** branch to here only if YYBACKUP was called.
+ */
+ yynewstate:
+ yy_pv = yypv;
+ yy_ps = yyps;
+ yy_state = yystate;
+ goto yy_newstate;
- if (yyss == NULL && yygrowstack()) goto yyoverflow;
- yyssp = yyss;
- yyvsp = yyvs;
- *yyssp = yystate = 0;
+ /*
+ ** get globals into registers.
+ ** either we just started, or we just finished a reduction
+ */
+ yystack:
+ yy_pv = yypv;
+ yy_ps = yyps;
+ yy_state = yystate;
-yyloop:
- if ((yyn = yydefred[yystate])) goto yyreduce;
- if (yychar < 0)
- {
- if ((yychar = yylex()) < 0) yychar = 0;
+ /*
+ ** top of for (;;) loop while no reductions done
+ */
+ yy_stack:
+ /*
+ ** put a state and value onto the stacks
+ */
#if YYDEBUG
- if (yydebug)
- {
- yys = 0;
- if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
- if (!yys) yys = "illegal-symbol";
- printf("%sdebug: state %d, reading %d (%s)\n",
- YYPREFIX, yystate, yychar, yys);
- }
+ /*
+ ** if debugging, look up token value in list of value vs.
+ ** name pairs. 0 and negative (-1) are special values.
+ ** Note: linear search is used since time is not a real
+ ** consideration while debugging.
+ */
+ if ( yydebug )
+ {
+ register int yy_i;
+
+ printf( "State %d, token ", yy_state );
+ if ( yychar == 0 )
+ printf( "end-of-file\n" );
+ else if ( yychar < 0 )
+ printf( "-none-\n" );
+ else
+ {
+ for ( yy_i = 0; yytoks[yy_i].t_val >= 0;
+ yy_i++ )
+ {
+ if ( yytoks[yy_i].t_val == yychar )
+ break;
+ }
+ printf( "%s\n", yytoks[yy_i].t_name );
+ }
+ }
+#endif /* YYDEBUG */
+ if ( ++yy_ps >= &yys[ yymaxdepth ] ) /* room on stack? */
+ {
+ /*
+ ** reallocate and recover. Note that pointers
+ ** have to be reset, or bad things will happen
+ */
+ int yyps_index = (yy_ps - yys);
+ int yypv_index = (yy_pv - yyv);
+ int yypvt_index = (yypvt - yyv);
+ int yynewmax;
+#ifdef YYEXPAND
+ yynewmax = YYEXPAND(yymaxdepth);
+#else
+ yynewmax = 2 * yymaxdepth; /* double table size */
+ if (yymaxdepth == YYMAXDEPTH) /* first time growth */
+ {
+ char *newyys = (char *)YYNEW(int);
+ char *newyyv = (char *)YYNEW(YYSTYPE);
+ if (newyys != 0 && newyyv != 0)
+ {
+ yys = YYCOPY(newyys, yys, int);
+ yyv = YYCOPY(newyyv, yyv, YYSTYPE);
+ }
+ else
+ yynewmax = 0; /* failed */
+ }
+ else /* not first time */
+ {
+ yys = YYENLARGE(yys, int);
+ yyv = YYENLARGE(yyv, YYSTYPE);
+ if (yys == 0 || yyv == 0)
+ yynewmax = 0; /* failed */
+ }
#endif
- }
- if ((yyn = yysindex[yystate]) && (yyn += yychar) >= 0 &&
- yyn <= YYTABLESIZE && yycheck[yyn] == yychar)
- {
+ if (yynewmax <= yymaxdepth) /* tables not expanded */
+ {
+ yyerror( "yacc stack overflow" );
+ YYABORT;
+ }
+ yymaxdepth = yynewmax;
+
+ yy_ps = yys + yyps_index;
+ yy_pv = yyv + yypv_index;
+ yypvt = yyv + yypvt_index;
+ }
+ *yy_ps = yy_state;
+ *++yy_pv = yyval;
+
+ /*
+ ** we have a new state - find out what to do
+ */
+ yy_newstate:
+ if ( ( yy_n = yypact[ yy_state ] ) <= YYFLAG )
+ goto yydefault; /* simple state */
#if YYDEBUG
- if (yydebug)
- printf("%sdebug: state %d, shifting to state %d\n",
- YYPREFIX, yystate, yytable[yyn]);
+ /*
+ ** if debugging, need to mark whether new token grabbed
+ */
+ yytmp = yychar < 0;
#endif
- if (yyssp >= yysslim && yygrowstack())
- {
- goto yyoverflow;
- }
- *++yyssp = yystate = yytable[yyn];
- *++yyvsp = yylval;
- yychar = (-1);
- if (yyerrflag > 0) --yyerrflag;
- goto yyloop;
- }
- if ((yyn = yyrindex[yystate]) && (yyn += yychar) >= 0 &&
- yyn <= YYTABLESIZE && yycheck[yyn] == yychar)
- {
- yyn = yytable[yyn];
- goto yyreduce;
- }
- if (yyerrflag) goto yyinrecovery;
-#if defined(lint) || defined(__GNUC__) || defined (WIN32) || defined (__HP_aCC)
- goto yynewerror;
-#endif
-yynewerror:
- yyerror("syntax error");
-#if defined(lint) || defined(__GNUC__) || defined (WIN32) || defined (__HP_aCC)
- goto yyerrlab;
-#endif
-yyerrlab:
- ++yynerrs;
-yyinrecovery:
- if (yyerrflag < 3)
- {
- yyerrflag = 3;
- for (;;)
- {
- if ((yyn = yysindex[*yyssp]) && (yyn += YYERRCODE) >= 0 &&
- yyn <= YYTABLESIZE && yycheck[yyn] == YYERRCODE)
- {
+ if ( ( yychar < 0 ) && ( ( yychar = YYLEX() ) < 0 ) )
+ yychar = 0; /* reached EOF */
#if YYDEBUG
- if (yydebug)
- printf("%sdebug: state %d, error recovery shifting\
- to state %d\n", YYPREFIX, *yyssp, yytable[yyn]);
-#endif
- if (yyssp >= yysslim && yygrowstack())
- {
- goto yyoverflow;
- }
- *++yyssp = yystate = yytable[yyn];
- *++yyvsp = yylval;
- goto yyloop;
- }
- else
- {
+ if ( yydebug && yytmp )
+ {
+ register int yy_i;
+
+ printf( "Received token " );
+ if ( yychar == 0 )
+ printf( "end-of-file\n" );
+ else if ( yychar < 0 )
+ printf( "-none-\n" );
+ else
+ {
+ for ( yy_i = 0; yytoks[yy_i].t_val >= 0;
+ yy_i++ )
+ {
+ if ( yytoks[yy_i].t_val == yychar )
+ break;
+ }
+ printf( "%s\n", yytoks[yy_i].t_name );
+ }
+ }
+#endif /* YYDEBUG */
+ if ( ( ( yy_n += yychar ) < 0 ) || ( yy_n >= YYLAST ) )
+ goto yydefault;
+ if ( yychk[ yy_n = yyact[ yy_n ] ] == yychar ) /*valid shift*/
+ {
+ yychar = -1;
+ yyval = yylval;
+ yy_state = yy_n;
+ if ( yyerrflag > 0 )
+ yyerrflag--;
+ goto yy_stack;
+ }
+
+ yydefault:
+ if ( ( yy_n = yydef[ yy_state ] ) == -2 )
+ {
#if YYDEBUG
- if (yydebug)
- printf("%sdebug: error recovery discarding state %d\n",
- YYPREFIX, *yyssp);
+ yytmp = yychar < 0;
#endif
- if (yyssp <= yyss) goto yyabort;
- --yyssp;
- --yyvsp;
- }
- }
- }
- else
- {
- if (yychar == 0) goto yyabort;
+ if ( ( yychar < 0 ) && ( ( yychar = YYLEX() ) < 0 ) )
+ yychar = 0; /* reached EOF */
#if YYDEBUG
- if (yydebug)
- {
- yys = 0;
- if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
- if (!yys) yys = "illegal-symbol";
- printf("%sdebug: state %d, error recovery discards token %d (%s)\n",
- YYPREFIX, yystate, yychar, yys);
- }
+ if ( yydebug && yytmp )
+ {
+ register int yy_i;
+
+ printf( "Received token " );
+ if ( yychar == 0 )
+ printf( "end-of-file\n" );
+ else if ( yychar < 0 )
+ printf( "-none-\n" );
+ else
+ {
+ for ( yy_i = 0;
+ yytoks[yy_i].t_val >= 0;
+ yy_i++ )
+ {
+ if ( yytoks[yy_i].t_val
+ == yychar )
+ {
+ break;
+ }
+ }
+ printf( "%s\n", yytoks[yy_i].t_name );
+ }
+ }
+#endif /* YYDEBUG */
+ /*
+ ** look through exception table
+ */
+ {
+ register int *yyxi = yyexca;
+
+ while ( ( *yyxi != -1 ) ||
+ ( yyxi[1] != yy_state ) )
+ {
+ yyxi += 2;
+ }
+ while ( ( *(yyxi += 2) >= 0 ) &&
+ ( *yyxi != yychar ) )
+ ;
+ if ( ( yy_n = yyxi[1] ) < 0 )
+ YYACCEPT;
+ }
+ }
+
+ /*
+ ** check for syntax error
+ */
+ if ( yy_n == 0 ) /* have an error */
+ {
+ /* no worry about speed here! */
+ switch ( yyerrflag )
+ {
+ case 0: /* new error */
+ yyerror( "syntax error" );
+ goto skip_init;
+ yyerrlab:
+ /*
+ ** get globals into registers.
+ ** we have a user generated syntax type error
+ */
+ yy_pv = yypv;
+ yy_ps = yyps;
+ yy_state = yystate;
+ skip_init:
+ yynerrs++;
+ /* FALLTHRU */
+ case 1:
+ case 2: /* incompletely recovered error */
+ /* try again... */
+ yyerrflag = 3;
+ /*
+ ** find state where "error" is a legal
+ ** shift action
+ */
+ while ( yy_ps >= yys )
+ {
+ yy_n = yypact[ *yy_ps ] + YYERRCODE;
+ if ( yy_n >= 0 && yy_n < YYLAST &&
+ yychk[yyact[yy_n]] == YYERRCODE) {
+ /*
+ ** simulate shift of "error"
+ */
+ yy_state = yyact[ yy_n ];
+ goto yy_stack;
+ }
+ /*
+ ** current state has no shift on
+ ** "error", pop stack
+ */
+#if YYDEBUG
+# define _POP_ "Error recovery pops state %d, uncovers state %d\n"
+ if ( yydebug )
+ printf( _POP_, *yy_ps,
+ yy_ps[-1] );
+# undef _POP_
#endif
- yychar = (-1);
- goto yyloop;
- }
-yyreduce:
+ yy_ps--;
+ yy_pv--;
+ }
+ /*
+ ** there is no state on stack with "error" as
+ ** a valid shift. give up.
+ */
+ YYABORT;
+ case 3: /* no shift yet; eat a token */
+#if YYDEBUG
+ /*
+ ** if debugging, look up token in list of
+ ** pairs. 0 and negative shouldn't occur,
+ ** but since timing doesn't matter when
+ ** debugging, it doesn't hurt to leave the
+ ** tests here.
+ */
+ if ( yydebug )
+ {
+ register int yy_i;
+
+ printf( "Error recovery discards " );
+ if ( yychar == 0 )
+ printf( "token end-of-file\n" );
+ else if ( yychar < 0 )
+ printf( "token -none-\n" );
+ else
+ {
+ for ( yy_i = 0;
+ yytoks[yy_i].t_val >= 0;
+ yy_i++ )
+ {
+ if ( yytoks[yy_i].t_val
+ == yychar )
+ {
+ break;
+ }
+ }
+ printf( "token %s\n",
+ yytoks[yy_i].t_name );
+ }
+ }
+#endif /* YYDEBUG */
+ if ( yychar == 0 ) /* reached EOF. quit */
+ YYABORT;
+ yychar = -1;
+ goto yy_newstate;
+ }
+ }/* end if ( yy_n == 0 ) */
+ /*
+ ** reduction by production yy_n
+ ** put stack tops, etc. so things right after switch
+ */
#if YYDEBUG
- if (yydebug)
- printf("%sdebug: state %d, reducing by rule %d (%s)\n",
- YYPREFIX, yystate, yyn, yyrule[yyn]);
+ /*
+ ** if debugging, print the string that is the user's
+ ** specification of the reduction which is just about
+ ** to be done.
+ */
+ if ( yydebug )
+ printf( "Reduce by (%d) \"%s\"\n",
+ yy_n, yyreds[ yy_n ] );
#endif
- yym = yylen[yyn];
- yyval = yyvsp[1-yym];
- switch (yyn)
- {
+ yytmp = yy_n; /* value to switch over */
+ yypvt = yy_pv; /* $vars top of value stack */
+ /*
+ ** Look in goto table for next state
+ ** Sorry about using yy_state here as temporary
+ ** register variable, but why not, if it works...
+ ** If yyr2[ yy_n ] doesn't have the low order bit
+ ** set, then there is no action to be done for
+ ** this reduction. So, no saving & unsaving of
+ ** registers done. The only difference between the
+ ** code just after the if and the body of the if is
+ ** the goto yy_stack in the body. This way the test
+ ** can be made before the choice of what to do is needed.
+ */
+ {
+ /* length of production doubled with extra bit */
+ register int yy_len = yyr2[ yy_n ];
+
+ if ( !( yy_len & 01 ) )
+ {
+ yy_len >>= 1;
+ yyval = ( yy_pv -= yy_len )[1]; /* $$ = $1 */
+ yy_state = yypgo[ yy_n = yyr1[ yy_n ] ] +
+ *( yy_ps -= yy_len ) + 1;
+ if ( yy_state >= YYLAST ||
+ yychk[ yy_state =
+ yyact[ yy_state ] ] != -yy_n )
+ {
+ yy_state = yyact[ yypgo[ yy_n ] ];
+ }
+ goto yy_stack;
+ }
+ yy_len >>= 1;
+ yyval = ( yy_pv -= yy_len )[1]; /* $$ = $1 */
+ yy_state = yypgo[ yy_n = yyr1[ yy_n ] ] +
+ *( yy_ps -= yy_len ) + 1;
+ if ( yy_state >= YYLAST ||
+ yychk[ yy_state = yyact[ yy_state ] ] != -yy_n )
+ {
+ yy_state = yyact[ yypgo[ yy_n ] ];
+ }
+ }
+ /* save until reenter driver code */
+ yystate = yy_state;
+ yyps = yy_ps;
+ yypv = yy_pv;
+ }
+ /*
+ ** code supplied by user is placed in this switch
+ */
+ switch( yytmp )
+ {
+
case 1:
-{ yyval.constraint_ = new TAO_Unary_Constraint(TAO_CONSTRAINT, yyvsp[0].constraint_); }
-break;
+
+{ yyval.constraint_ = new TAO_Unary_Constraint(TAO_CONSTRAINT, yypvt[-0].constraint_); } break;
case 2:
-{ yyval.constraint_ = yyvsp[0].constraint_; }
-break;
+
+{ yyval.constraint_ = yypvt[-0].constraint_; } break;
case 3:
-{ yyval.constraint_ = new TAO_Unary_Constraint(TAO_MIN, yyvsp[0].constraint_); }
-break;
+
+{ yyval.constraint_ = new TAO_Unary_Constraint(TAO_MIN, yypvt[-0].constraint_); } break;
case 4:
-{ yyval.constraint_ = new TAO_Unary_Constraint(TAO_MAX, yyvsp[0].constraint_); }
-break;
+
+{ yyval.constraint_ = new TAO_Unary_Constraint(TAO_MAX, yypvt[-0].constraint_); } break;
case 5:
-{ yyval.constraint_ = new TAO_Unary_Constraint(TAO_WITH, yyvsp[0].constraint_); }
-break;
+
+{ yyval.constraint_ = new TAO_Unary_Constraint(TAO_WITH, yypvt[-0].constraint_); } break;
case 6:
-{ yyval.constraint_ = new TAO_Noop_Constraint(TAO_FIRST); }
-break;
+
+{ yyval.constraint_ = new TAO_Noop_Constraint(TAO_FIRST); } break;
case 7:
-{ yyval.constraint_ = new TAO_Noop_Constraint(TAO_RANDOM); }
-break;
+
+{ yyval.constraint_ = new TAO_Noop_Constraint(TAO_RANDOM); } break;
case 8:
-{ yyval.constraint_ = new TAO_Binary_Constraint(TAO_OR, yyvsp[-2].constraint_, yyvsp[0].constraint_); }
-break;
+
+{ yyval.constraint_ = new TAO_Binary_Constraint(TAO_OR, yypvt[-2].constraint_, yypvt[-0].constraint_); } break;
case 9:
-{ yyval.constraint_ = yyvsp[0].constraint_; }
-break;
+
+{ yyval.constraint_ = yypvt[-0].constraint_; } break;
case 10:
-{ yyval.constraint_ = new TAO_Binary_Constraint(TAO_AND, yyvsp[-2].constraint_, yyvsp[0].constraint_); }
-break;
+
+{ yyval.constraint_ = new TAO_Binary_Constraint(TAO_AND, yypvt[-2].constraint_, yypvt[-0].constraint_); } break;
case 11:
-{ yyval.constraint_ = yyvsp[0].constraint_; }
-break;
+
+{ yyval.constraint_ = yypvt[-0].constraint_; } break;
case 12:
-{ yyval.constraint_ = new TAO_Binary_Constraint(TAO_EQ, yyvsp[-2].constraint_, yyvsp[0].constraint_); }
-break;
+
+{ yyval.constraint_ = new TAO_Binary_Constraint(TAO_EQ, yypvt[-2].constraint_, yypvt[-0].constraint_); } break;
case 13:
-{ yyval.constraint_ = new TAO_Binary_Constraint(TAO_NE, yyvsp[-2].constraint_, yyvsp[0].constraint_); }
-break;
+
+{ yyval.constraint_ = new TAO_Binary_Constraint(TAO_NE, yypvt[-2].constraint_, yypvt[-0].constraint_); } break;
case 14:
-{ yyval.constraint_ = new TAO_Binary_Constraint(TAO_GT, yyvsp[-2].constraint_, yyvsp[0].constraint_); }
-break;
+
+{ yyval.constraint_ = new TAO_Binary_Constraint(TAO_GT, yypvt[-2].constraint_, yypvt[-0].constraint_); } break;
case 15:
-{ yyval.constraint_ = new TAO_Binary_Constraint(TAO_GE, yyvsp[-2].constraint_, yyvsp[0].constraint_); }
-break;
+
+{ yyval.constraint_ = new TAO_Binary_Constraint(TAO_GE, yypvt[-2].constraint_, yypvt[-0].constraint_); } break;
case 16:
-{ yyval.constraint_ = new TAO_Binary_Constraint(TAO_LT, yyvsp[-2].constraint_, yyvsp[0].constraint_); }
-break;
+
+{ yyval.constraint_ = new TAO_Binary_Constraint(TAO_LT, yypvt[-2].constraint_, yypvt[-0].constraint_); } break;
case 17:
-{ yyval.constraint_ = new TAO_Binary_Constraint(TAO_LE, yyvsp[-2].constraint_, yyvsp[0].constraint_); }
-break;
+
+{ yyval.constraint_ = new TAO_Binary_Constraint(TAO_LE, yypvt[-2].constraint_, yypvt[-0].constraint_); } break;
case 18:
-{ yyval.constraint_ = yyvsp[0].constraint_; }
-break;
+
+{ yyval.constraint_ = yypvt[-0].constraint_; } break;
case 19:
-{ yyval.constraint_ = new TAO_Binary_Constraint(TAO_IN, yyvsp[-2].constraint_, yyvsp[0].constraint_); }
-break;
+
+{ yyval.constraint_ = new TAO_Binary_Constraint(TAO_IN, yypvt[-2].constraint_, yypvt[-0].constraint_); } break;
case 20:
-{ yyval.constraint_ = yyvsp[0].constraint_; }
-break;
+
+{ yyval.constraint_ = yypvt[-0].constraint_; } break;
case 21:
-{ yyval.constraint_ = new TAO_Binary_Constraint(TAO_TWIDDLE, yyvsp[-2].constraint_, yyvsp[0].constraint_); }
-break;
+
+{ yyval.constraint_ = new TAO_Binary_Constraint(TAO_TWIDDLE, yypvt[-2].constraint_, yypvt[-0].constraint_); } break;
case 22:
-{ yyval.constraint_ = yyvsp[0].constraint_; }
-break;
+
+{ yyval.constraint_ = yypvt[-0].constraint_; } break;
case 23:
-{ yyval.constraint_ = new TAO_Binary_Constraint(TAO_PLUS, yyvsp[-2].constraint_, yyvsp[0].constraint_); }
-break;
+
+{ yyval.constraint_ = new TAO_Binary_Constraint(TAO_PLUS, yypvt[-2].constraint_, yypvt[-0].constraint_); } break;
case 24:
-{ yyval.constraint_ = new TAO_Binary_Constraint(TAO_MINUS, yyvsp[-2].constraint_, yyvsp[0].constraint_); }
-break;
+
+{ yyval.constraint_ = new TAO_Binary_Constraint(TAO_MINUS, yypvt[-2].constraint_, yypvt[-0].constraint_); } break;
case 25:
-{ yyval.constraint_ = yyvsp[0].constraint_; }
-break;
+
+{ yyval.constraint_ = yypvt[-0].constraint_; } break;
case 26:
-{ yyval.constraint_ = new TAO_Binary_Constraint(TAO_MULT, yyvsp[-2].constraint_, yyvsp[0].constraint_); }
-break;
+
+{ yyval.constraint_ = new TAO_Binary_Constraint(TAO_MULT, yypvt[-2].constraint_, yypvt[-0].constraint_); } break;
case 27:
-{ yyval.constraint_ = new TAO_Binary_Constraint(TAO_DIV, yyvsp[-2].constraint_, yyvsp[0].constraint_); }
-break;
+
+{ yyval.constraint_ = new TAO_Binary_Constraint(TAO_DIV, yypvt[-2].constraint_, yypvt[-0].constraint_); } break;
case 28:
-{ yyval.constraint_ = yyvsp[0].constraint_; }
-break;
+
+{ yyval.constraint_ = yypvt[-0].constraint_; } break;
case 29:
-{ yyval.constraint_ = new TAO_Unary_Constraint(TAO_NOT, yyvsp[0].constraint_); }
-break;
+
+{ yyval.constraint_ = new TAO_Unary_Constraint(TAO_NOT, yypvt[-0].constraint_); } break;
case 30:
-{ yyval.constraint_ = yyvsp[0].constraint_; }
-break;
+
+{ yyval.constraint_ = yypvt[-0].constraint_; } break;
case 31:
-{ yyval.constraint_ = yyvsp[-1].constraint_; }
-break;
+
+{ yyval.constraint_ = yypvt[-1].constraint_; } break;
case 32:
-{ yyval.constraint_ = new TAO_Unary_Constraint(TAO_EXIST, yyvsp[0].constraint_); }
-break;
+
+{ yyval.constraint_ = new TAO_Unary_Constraint(TAO_EXIST, yypvt[-0].constraint_); } break;
case 33:
-{ yyval.constraint_ = yyvsp[0].constraint_; }
-break;
+
+{ yyval.constraint_ = yypvt[-0].constraint_; } break;
case 34:
-{ yyval.constraint_ = yyvsp[0].constraint_; }
-break;
+
+{ yyval.constraint_ = yypvt[-0].constraint_; } break;
case 35:
-{ yyval.constraint_ = new TAO_Unary_Constraint(TAO_UMINUS, yyvsp[0].constraint_); }
-break;
+
+{ yyval.constraint_ = new TAO_Unary_Constraint(TAO_UMINUS, yypvt[-0].constraint_); } break;
case 36:
-{ yyval.constraint_ = yyvsp[0].constraint_; }
-break;
+
+{ yyval.constraint_ = yypvt[-0].constraint_; } break;
case 37:
-{ yyval.constraint_ = yyvsp[0].constraint_; }
-break;
- }
- yyssp -= yym;
- yystate = *yyssp;
- yyvsp -= yym;
- yym = yylhs[yyn];
- if (yystate == 0 && yym == 0)
- {
-#if YYDEBUG
- if (yydebug)
- printf("%sdebug: after reduction, shifting from state 0 to\
- state %d\n", YYPREFIX, YYFINAL);
-#endif
- yystate = YYFINAL;
- *++yyssp = YYFINAL;
- *++yyvsp = yyval;
- if (yychar < 0)
- {
- if ((yychar = yylex()) < 0) yychar = 0;
-#if YYDEBUG
- if (yydebug)
- {
- yys = 0;
- if (yychar <= YYMAXTOKEN) yys = yyname[yychar];
- if (!yys) yys = "illegal-symbol";
- printf("%sdebug: state %d, reading %d (%s)\n",
- YYPREFIX, YYFINAL, yychar, yys);
- }
-#endif
- }
- if (yychar == 0) goto yyaccept;
- goto yyloop;
- }
- if ((yyn = yygindex[yym]) && (yyn += yystate) >= 0 &&
- yyn <= YYTABLESIZE && yycheck[yyn] == yystate)
- yystate = yytable[yyn];
- else
- yystate = yydgoto[yym];
-#if YYDEBUG
- if (yydebug)
- printf("%sdebug: after reduction, shifting from state %d \
-to state %d\n", YYPREFIX, *yyssp, yystate);
-#endif
- if (yyssp >= yysslim && yygrowstack())
- {
- goto yyoverflow;
- }
- *++yyssp = yystate;
- *++yyvsp = yyval;
- goto yyloop;
-yyoverflow:
- yyerror("yacc stack overflow");
-yyabort:
- return (1);
-yyaccept:
- return (0);
+
+{ yyval.constraint_ = yypvt[-0].constraint_; } break;
+
+ }
+ goto yystack; /* reset registers in driver code */
}
+
TAO_END_VERSIONED_NAMESPACE_DECL