|
PPL
0.12.1
|
00001 /* Copyright (C) 2001-2010 Roberto Bagnara <bagnara@cs.unipr.it> 00002 Copyright (C) 2010-2012 BUGSENG srl (http://bugseng.com) 00003 00004 This file is free software; as a special exception the author gives 00005 unlimited permission to copy and/or distribute it, with or without 00006 modifications, as long as this notice is preserved. 00007 00008 This program is distributed in the hope that it will be useful, but 00009 WITHOUT ANY WARRANTY, to the extent permitted by law; without even the 00010 implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00011 PURPOSE. */ 00012 00013 #ifndef PPL_Concrete_Expression_types_hh 00014 #define PPL_Concrete_Expression_types_hh 1 00015 00016 namespace Parma_Polyhedra_Library { 00017 00018 /* 00019 NOTE: Doxygen seems to ignore documentation blocks attached to 00020 template class declarations that are not provided with a definition. 00021 This justifies (here below) the explicit use of Doxygen command \class. 00022 */ 00023 00027 template <typename Target> 00028 class Concrete_Expression; 00029 00033 template <typename Target> 00034 class Binary_Operator; 00035 00039 template <typename Target> 00040 class Unary_Operator; 00041 00045 template <typename Target> 00046 class Cast_Operator; 00047 00051 template <typename Target> 00052 class Integer_Constant; 00053 00057 template <typename Target> 00058 class Floating_Point_Constant; 00059 00063 template <typename Target> 00064 class Approximable_Reference; 00065 00066 class Concrete_Expression_Type; 00067 00078 typedef int Concrete_Expression_Kind; 00079 00086 typedef int Concrete_Expression_BOP; 00087 00094 typedef int Concrete_Expression_UOP; 00095 00096 } // namespace Parma_Polyhedra_Library 00097 00098 #endif // !defined(PPL_Concrete_Expression_types_hh)