%{ #include "inferencerule_parser.tab.h" #include #include #include #include using namespace std; %} A [/] B [*] C [^/*] L [a-zA-Z_] Operators add|sub|multiply|divide|mod|gt|ge|lt|le|lognot|logand|logor|logeq|diseq|wildeq|zeq|case|bitand|bitor|bitxor|bitxnor|bitneg|select|concat|leftshift|rightshift|redand|redor|rednor|redxor|redxnor|ite|replic|posedge|negedge|anyedge|orevent|edgecond|default|typeref|assignpattern|defaultvalue|labelvalue|exp|cast|tri|zeroextn|signed|unsigned|oneextn|signextn|countones Type "SIGNED_INTEGER"|"UNSIGNED_INTEGER"|"SIGNED_BITVECTOR"|"UNSIGNED_BITVECTOR"|"REAL"|"BOOL" %% {A}({A}.*|{B}({A}|{C}|{B}+{C})*{B}+{A}) {/*cout<<"Comments in Lex\n";*/ return t_Comments;} "$operator:" {/*cout<<"Operator string\n"; */ return t_OperatorString; } {Operators} {/* cout<<"Operator:"<