-/* ------------------------------------------------\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
-#include<stdio.h>\r
-#include<stdlib.h>\r
-\r
-#include"nic_def.h"\r
-\r
-extern int NicParserparse(void);\r
-extern FILE *NicParserin;\r
-extern int NicParserdebug;\r
-\r
-\r
-nic_property *nicp;\r
-std::vector<std::string> nic_attr_vec;\r
-std::vector<std::string> nic_val_vec;\r
-std::string nic_a, nic_v;\r
-\r
-using namespace std;\r
-\r
-nic_property *load_nic_property(std::string dir, std::string name){\r
-\r
- string fname;\r
- if(dir != "")\r
- fname = dir + "/nic_property_"+name+".def";\r
- else\r
- fname = "nic_property_"+name+".def";\r
-\r
- FILE *nicf = fopen(fname.c_str(),"r");\r
- if(! nicf){\r
- fprintf(stderr,"ERROR, can't open nic property file %s\n",fname.c_str());\r
- return NULL;\r
- }\r
-\r
-NicParserdebug = 0;\r
- nicp = new nic_property();\r
- NicParser_setfileinput(nicf);\r
- if(NicParserparse()){\r
- fprintf(stderr,"could not parse nic property file %s\n",fname.c_str());\r
- return NULL;\r
- }\r
- \r
- return nicp;\r
-}\r
-\r
-bool nic_property::legal_type(string t){\r
-int i;\r
- for(i=0;i<typea.size();++i){\r
- if(t==typea[i])\r
- return true;\r
- }\r
- return false;\r
-}\r
-\r
-\r
-bool nic_property::legal_unary_op(string t){\r
-int i;\r
- for(i=0;i<opua.size();++i){\r
- if(t==opua[i])\r
- return true;\r
- }\r
- return false;\r
-}\r
-\r
-\r
-\r
-bool nic_property::legal_binary_op(string t){\r
-int i;\r
- for(i=0;i<opba.size();++i){\r
- if(t==opba[i])\r
- return true;\r
- }\r
- return false;\r
-}\r
-\r
-\r
-bool nic_property::illegal_field(string t){\r
-int i;\r
- for(i=0;i<fieldsa.size();++i){\r
- if(t==fieldsa[i])\r
- return true;\r
- }\r
- return false;\r
-}\r
-\r
-\r
-\r
-bool nic_property::option_exists(string t){\r
-int i;\r
- for(i=0;i<opta.size();++i){\r
- if(t==opta[i])\r
- return true;\r
- }\r
- return false;\r
-}\r
-\r
-\r
-string nic_property::option_value(string t){\r
-int i;\r
- for(i=0;i<opta.size();++i){\r
- if(t==opta[i])\r
- return optv[i];\r
- }\r
- return "";\r
-}\r
-\r
-\r
-\r
-\r
-\r
-\r
-\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.
+ ------------------------------------------- */
+#include<stdio.h>
+#include<stdlib.h>
+
+#include"nic_def.h"
+
+extern int NicParserparse(void);
+extern FILE *NicParserin;
+extern int NicParserdebug;
+
+
+nic_property *nicp;
+std::vector<std::string> nic_attr_vec;
+std::vector<std::string> nic_val_vec;
+std::string nic_a, nic_v;
+
+using namespace std;
+
+nic_property *load_nic_property(std::string dir, std::string name){
+
+ string fname;
+ if(dir != "")
+ fname = dir + "/nic_property_"+name+".def";
+ else
+ fname = "nic_property_"+name+".def";
+
+ FILE *nicf = fopen(fname.c_str(),"r");
+ if(! nicf){
+ fprintf(stderr,"ERROR, can't open nic property file %s\n",fname.c_str());
+ return NULL;
+ }
+
+NicParserdebug = 0;
+ nicp = new nic_property();
+ NicParser_setfileinput(nicf);
+ if(NicParserparse()){
+ fprintf(stderr,"could not parse nic property file %s\n",fname.c_str());
+ return NULL;
+ }
+
+ return nicp;
+}
+
+bool nic_property::legal_type(string t){
+int i;
+ for(i=0;i<typea.size();++i){
+ if(t==typea[i])
+ return true;
+ }
+ return false;
+}
+
+
+bool nic_property::legal_unary_op(string t){
+int i;
+ for(i=0;i<opua.size();++i){
+ if(t==opua[i])
+ return true;
+ }
+ return false;
+}
+
+
+
+bool nic_property::legal_binary_op(string t){
+int i;
+ for(i=0;i<opba.size();++i){
+ if(t==opba[i])
+ return true;
+ }
+ return false;
+}
+
+
+bool nic_property::illegal_field(string t){
+int i;
+ for(i=0;i<fieldsa.size();++i){
+ if(t==fieldsa[i])
+ return true;
+ }
+ return false;
+}
+
+
+
+bool nic_property::option_exists(string t){
+int i;
+ for(i=0;i<opta.size();++i){
+ if(t==opta[i])
+ return true;
+ }
+ return false;
+}
+
+
+string nic_property::option_value(string t){
+int i;
+ for(i=0;i<opta.size();++i){
+ if(t==opta[i])
+ return optv[i];
+ }
+ return "";
+}
+
+
+
+
+
+
+
+
+
+
+
+