1 // Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE
3 // Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
4 // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
6 // This library is free software; you can redistribute it and/or
7 // modify it under the terms of the GNU Lesser General Public
8 // License as published by the Free Software Foundation; either
9 // version 2.1 of the License.
11 // This library is distributed in the hope that it will be useful,
12 // but WITHOUT ANY WARRANTY; without even the implied warranty of
13 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 // Lesser General Public License for more details.
16 // You should have received a copy of the GNU Lesser General Public
17 // License along with this library; if not, write to the Free Software
18 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
20 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
22 // File : SALOME_Eval.hxx
23 // Author : Peter KURNEV
27 #ifndef SALOME_Eval_Header_File
28 #define SALOME_Eval_Header_File
31 #pragma warning(disable : 4786)
40 typedef string RString;
41 typedef list<string> RStringList;
42 typedef RStringList::iterator ListIteratorOfRStringList;
43 typedef set<RString> SetOfRString;
44 typedef SetOfRString::iterator SetIteratorOfSetOfRString;
45 typedef pair< SetIteratorOfSetOfRString, bool > SetPair;
49 SALOME_EvalExpr_OK, //!< No errors found
50 SALOME_EvalExpr_OperandsNotMatch, //!< Types of arguments are invalid for this operation
51 SALOME_EvalExpr_InvalidResult, //!< Operation cannot find result (for example, division by zero)
52 SALOME_EvalExpr_InvalidOperation, //!< Unknown operation
53 SALOME_EvalExpr_OperationsNull, //!< Internal operations pointer of parser is null
54 SALOME_EvalExpr_InvalidToken, //!< Invalid token (neither operation, nor parameter of value)
55 SALOME_EvalExpr_CloseExpected, //!< Closing bracket is expected
56 SALOME_EvalExpr_ExcessClose, //!< Extra closing bracket is found
57 SALOME_EvalExpr_BracketsNotMatch, //!< Opening and closing brackets are of different type, e.g. [)
58 SALOME_EvalExpr_StackUnderflow, //!< There are no arguments in the stack for the operation
59 SALOME_EvalExpr_ExcessData //!< The parsing is finished, but there are more then one value in the stack
60 } SALOME_EvalExprError;