Fixed newline characters throughout the code
[com/gs-lite.git] / src / ftacmp / partn.y
index c7dae74..d394b1d 100644 (file)
-/* ------------------------------------------------\r
-Copyright 2014 AT&T Intellectual Property\r
-   Licensed under the Apache License, Version 2.0 (the "License");\r
-   you may not use this file except in compliance with the License.\r
-   You may obtain a copy of the License at\r
-\r
-     http://www.apache.org/licenses/LICENSE-2.0\r
-\r
-   Unless required by applicable law or agreed to in writing, software\r
-   distributed under the License is distributed on an "AS IS" BASIS,\r
-   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
-   See the License for the specific language governing permissions and\r
-   limitations under the License.\r
- ------------------------------------------- */\r
-\r
-/*\r
-       MUST COMPILE WITH\r
-   bison --verbose --defines=partn.tab.cc.h -p PartnParser  -o partn.tab.cc partn.y\r
-\r
-        (or equivalent).\r
-*/\r
-\r
-%{\r
-\r
-\r
-#include <stdio.h>\r
-\r
-/*             Some addn'l includes, necessary but not included by the\r
-               bison generated code.\r
-*/\r
-\r
-#include <stdlib.h>\r
-\r
-/*             prototypes for the parser callbacks.\r
-*/\r
-\r
-#include "parse_partn.h"\r
-\r
-extern partn_def_list_t *partn_parse_result;\r
-\r
-\r
-#define YYDEBUG 1\r
-\r
-%}\r
-\r
-\r
-       /* symbolic tokens */\r
-\r
-%union {\r
-       int intval;\r
-       double floatval;\r
-       char *strval;\r
-       int subtok;\r
-\r
-/*                     for FTA definition.     */\r
-       literal_t *litval;\r
-       scalarexp_t *scalarval;\r
-       se_list_t *se_listval;\r
-       colref_t *colref;\r
-       partn_def_list_t *pdl;\r
-       partn_def_t *pd;\r
-}\r
-\r
-%token <strval> NAME\r
-%token <strval> STRING_TOKEN\r
-%token <strval> INTNUM\r
-%token <strval> LONGINTNUM\r
-\r
-/*                     for FTA definition.     */\r
-%type <litval> literal\r
-%type <colref> column_ref\r
-%type <scalarval> scalar_exp\r
-%type <se_listval> scalar_exp_commalist\r
-%type <pdl> partn_def_list\r
-%type <pd> partn_def\r
-\r
-%left '|'\r
-%left '&'\r
-%left '+' '-'\r
-%left '*' '/' \r
-%nonassoc UMINUS\r
-\r
-       /* literal keyword tokens */\r
-%token HEX_L LHEX_L IP_L\r
-\r
-\r
-%%\r
-\r
-/*                     Union of possible results       */\r
-parse_result:  partn_def_list  {\r
-               partn_parse_result = $1;\r
-       }\r
-       ;\r
-\r
-\r
-partn_def_list:\r
-       partn_def       {$$ = new partn_def_list_t($1);}\r
-       | partn_def_list partn_def      {$$=$1->append($2);}\r
-       ;\r
-\r
-partn_def:\r
-       NAME '[' NAME ']' ':' '(' scalar_exp_commalist ')'\r
-               {$$ = new partn_def_t($1,$3,$7);}\r
-       ;\r
-\r
-scalar_exp:\r
-               scalar_exp '+' scalar_exp       { $$=new scalarexp_t("+",$1,$3);}\r
-       |       scalar_exp '-' scalar_exp       { $$=new scalarexp_t("-",$1,$3);}\r
-       |       scalar_exp '|' scalar_exp       { $$=new scalarexp_t("|",$1,$3);}\r
-       |       scalar_exp '*' scalar_exp       { $$=new scalarexp_t("*",$1,$3);}\r
-       |       scalar_exp '/' scalar_exp       { $$=new scalarexp_t("/",$1,$3);}\r
-       |       scalar_exp '&' scalar_exp       { $$=new scalarexp_t("&",$1,$3);}\r
-       |       '+' scalar_exp %prec UMINUS     { $$ = new scalarexp_t("+",$2);}\r
-       |       '-' scalar_exp %prec UMINUS     { $$ = new scalarexp_t("-",$2);}\r
-       |       literal { $$= new scalarexp_t($1);}\r
-       |       column_ref { $$ = new scalarexp_t($1);}\r
-       |       '(' scalar_exp ')'      {$$ = $2;}\r
-       ;\r
-\r
-scalar_exp_commalist:\r
-               scalar_exp      {       $$= new se_list_t($1); }\r
-       |       scalar_exp_commalist ',' scalar_exp     { $$=$1->append($3); }\r
-       ;\r
-\r
-literal:\r
-               INTNUM          {$$ = new literal_t($1,LITERAL_INT);}\r
-       |       LONGINTNUM              {$$ = new literal_t($1,LITERAL_LONGINT);}\r
-       |       HEX_L  STRING_TOKEN     {$$ = new literal_t($2,LITERAL_HEX);}\r
-       |       LHEX_L  STRING_TOKEN    {$$ = new literal_t($2,LITERAL_LONGHEX);}\r
-       |       IP_L  STRING_TOKEN      {$$ = new literal_t($2,LITERAL_IP);}\r
-       ;\r
-\r
-\r
-column_ref:\r
-               NAME    {$$ = new colref_t($1); }\r
-       ;\r
-\r
-\r
-%%\r
-\r
+/* ------------------------------------------------
+Copyright 2014 AT&T Intellectual Property
+   Licensed under the Apache License, Version 2.0 (the "License");
+   you may not use this file except in compliance with the License.
+   You may obtain a copy of the License at
+
+     http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+ ------------------------------------------- */
+
+/*
+       MUST COMPILE WITH
+   bison --verbose --defines=partn.tab.cc.h -p PartnParser  -o partn.tab.cc partn.y
+
+        (or equivalent).
+*/
+
+%{
+
+
+#include <stdio.h>
+
+/*             Some addn'l includes, necessary but not included by the
+               bison generated code.
+*/
+
+#include <stdlib.h>
+
+/*             prototypes for the parser callbacks.
+*/
+
+#include "parse_partn.h"
+
+extern partn_def_list_t *partn_parse_result;
+
+
+#define YYDEBUG 1
+
+%}
+
+
+       /* symbolic tokens */
+
+%union {
+       int intval;
+       double floatval;
+       char *strval;
+       int subtok;
+
+/*                     for FTA definition.     */
+       literal_t *litval;
+       scalarexp_t *scalarval;
+       se_list_t *se_listval;
+       colref_t *colref;
+       partn_def_list_t *pdl;
+       partn_def_t *pd;
+}
+
+%token <strval> NAME
+%token <strval> STRING_TOKEN
+%token <strval> INTNUM
+%token <strval> LONGINTNUM
+
+/*                     for FTA definition.     */
+%type <litval> literal
+%type <colref> column_ref
+%type <scalarval> scalar_exp
+%type <se_listval> scalar_exp_commalist
+%type <pdl> partn_def_list
+%type <pd> partn_def
+
+%left '|'
+%left '&'
+%left '+' '-'
+%left '*' '/' 
+%nonassoc UMINUS
+
+       /* literal keyword tokens */
+%token HEX_L LHEX_L IP_L
+
+
+%%
+
+/*                     Union of possible results       */
+parse_result:  partn_def_list  {
+               partn_parse_result = $1;
+       }
+       ;
+
+
+partn_def_list:
+       partn_def       {$$ = new partn_def_list_t($1);}
+       | partn_def_list partn_def      {$$=$1->append($2);}
+       ;
+
+partn_def:
+       NAME '[' NAME ']' ':' '(' scalar_exp_commalist ')'
+               {$$ = new partn_def_t($1,$3,$7);}
+       ;
+
+scalar_exp:
+               scalar_exp '+' scalar_exp       { $$=new scalarexp_t("+",$1,$3);}
+       |       scalar_exp '-' scalar_exp       { $$=new scalarexp_t("-",$1,$3);}
+       |       scalar_exp '|' scalar_exp       { $$=new scalarexp_t("|",$1,$3);}
+       |       scalar_exp '*' scalar_exp       { $$=new scalarexp_t("*",$1,$3);}
+       |       scalar_exp '/' scalar_exp       { $$=new scalarexp_t("/",$1,$3);}
+       |       scalar_exp '&' scalar_exp       { $$=new scalarexp_t("&",$1,$3);}
+       |       '+' scalar_exp %prec UMINUS     { $$ = new scalarexp_t("+",$2);}
+       |       '-' scalar_exp %prec UMINUS     { $$ = new scalarexp_t("-",$2);}
+       |       literal { $$= new scalarexp_t($1);}
+       |       column_ref { $$ = new scalarexp_t($1);}
+       |       '(' scalar_exp ')'      {$$ = $2;}
+       ;
+
+scalar_exp_commalist:
+               scalar_exp      {       $$= new se_list_t($1); }
+       |       scalar_exp_commalist ',' scalar_exp     { $$=$1->append($3); }
+       ;
+
+literal:
+               INTNUM          {$$ = new literal_t($1,LITERAL_INT);}
+       |       LONGINTNUM              {$$ = new literal_t($1,LITERAL_LONGINT);}
+       |       HEX_L  STRING_TOKEN     {$$ = new literal_t($2,LITERAL_HEX);}
+       |       LHEX_L  STRING_TOKEN    {$$ = new literal_t($2,LITERAL_LONGHEX);}
+       |       IP_L  STRING_TOKEN      {$$ = new literal_t($2,LITERAL_IP);}
+       ;
+
+
+column_ref:
+               NAME    {$$ = new colref_t($1); }
+       ;
+
+
+%%
+