private static void ProcessOperator( FuncData op, Expression e, Stack<FuncData> tmpStack )
{
while ( tmpStack.Count > 0 ) //while operators with higher or equal precedence
{
FuncData fd = tmpStack.Peek();
if ( fd.SpecialKind == SpecialOperandKind.NotSpecial && !fd.IsFunctionOrUnary && fd.Precedence >= op.Precedence )
e.Append( tmpStack.Pop().Func );
else
break;
}
tmpStack.Push( op );
}