#tab xmlrpcparser.tab.tcl

%{
%}

#include defs.fin

%%

\<methodcall\>		{return $METHODCALL_}
\</methodcall\>		{return $_METHODCALL_}

\<methodname\>		{return $METHODNAME_}
\</methodname\>		{return $_METHODNAME_}

\<methodresponse\>	{return $METHODRESPONSE_}
\</methodresponse\>	{return $_METHODRESPONSE_}

\<fault\>		{return $FAULT_}
\</fault\>		{return $_FAULT_}

\<params\>		{return $PARAMS_}
\</params\>		{return $_PARAMS_}

\<param\>		{return $PARAM_}
\</param\>		{return $_PARAM_}

\<value\>		{return $VALUE_}
\</value\>		{return $_VALUE_}

\<int\>			{return $INTEGER_}
\</int\>		{return $_INTEGER_}

\<integer\>		{return $INTEGER_}
\</integer\>		{return $_INTEGER_}

\<struct\>		{return $STRUCT_}
\</struct\>		{return $_STRUCT_}

\<array\>		{return $ARRAY_}
\</array\>		{return $_ARRAY_}

\<member\>		{return $MEMBER_}
\</member\>		{return $_MEMBER_}

\<name\>		{return $NAME_}
\</name\>		{return $_NAME_}

\<data\>		{return $DATA_}
\</data\>		{return $_DATA_}

\<\?xml[^\?]*\?\> {set yylval $yytext; return $HEADER_}

# STRING
\<string\>[^\<]*\</string\> {set yylval [string range $yytext 9 end-10]; return $STRING_}
\<value\>[^\<]*\</value\> {set yylval [string range $yytext 8 end-9]; return $STRING_}

\S+ {set yylval $yytext; return $STRING_}

#include ws.fin

%%
