num_range.g.hh

Go to the documentation of this file.
00001 // This file is automatically generated, do not edit.
00002 
00003 /*!
00004         \file
00005         \brief Numeric type ranges.
00006         \author jaz
00007 */
00008 
00009 #ifndef lestes__md__types__num_range_g_hh__included
00010 #define lestes__md__types__num_range_g_hh__included
00011 
00012 #include <lestes/md/common.hh>
00013 
00014 #include <lestes/std/objectize_macros.hh>
00015 package(lestes);
00016 package(std);
00017 class object;
00018 end_package(std);
00019 end_package(lestes);
00020 
00021 package(lestes);
00022 package(md);
00023 package(types);
00024 
00025 
00026 class num_range;
00027 
00028 
00029 //! Information about ranges of a numeric type.
00030 class num_range : public ::lestes::std::object {
00031 public:
00032         //! The method max_get returns the value of the field num_range::max.
00033         lstring max_get() const;
00034 
00035         //! The method max_set sets the field num_range::max to the given value.
00036         void max_set(lstring);
00037 
00038         //! The method is_signed_get returns the value of the field num_range::is_signed.
00039         bool is_signed_get() const;
00040 
00041         //! The method is_signed_set sets the field num_range::is_signed to the given value.
00042         void is_signed_set(bool);
00043 
00044         //! The method digits_get returns the value of the field num_range::digits.
00045         ulint digits_get() const;
00046 
00047         //! The method digits_set sets the field num_range::digits to the given value.
00048         void digits_set(ulint);
00049 
00050         //! The method bits_get returns the value of the field num_range::bits.
00051         ulint bits_get() const;
00052 
00053         //! The method bits_set sets the field num_range::bits to the given value.
00054         void bits_set(ulint);
00055 
00056         //! The method mantisa_get returns the value of the field num_range::mantisa.
00057         ptr< num_range > mantisa_get() const;
00058 
00059         //! The method mantisa_set sets the field num_range::mantisa to the given value.
00060         void mantisa_set(const ptr< num_range > &);
00061 
00062         //! The method exponent_get returns the value of the field num_range::exponent.
00063         ptr< num_range > exponent_get() const;
00064 
00065         //! The method exponent_set sets the field num_range::exponent to the given value.
00066         void exponent_set(const ptr< num_range > &);
00067 
00068         
00069         //! First generated factory method for class num_range.
00070         static ptr< num_range > create (
00071                 lstring a__num_range__max,
00072                 bool a__num_range__is_signed,
00073                 ulint a__num_range__digits,
00074                 ulint a__num_range__bits,
00075                 ptr< num_range > a__num_range__mantisa,
00076                 ptr< num_range > a__num_range__exponent);
00077 
00078         
00079 
00080         //! for purposes of dumping
00081         virtual ptr<reflection_list> reflection_get() const;
00082         //! for purposes of dumping
00083         virtual ptr<field_list_list> field_values_get() const;
00084         
00085 protected:
00086         //! Generated constructor for class num_range.
00087         num_range (
00088                 lstring a__num_range__max,
00089                 bool a__num_range__is_signed,
00090                 ulint a__num_range__digits,
00091                 ulint a__num_range__bits,
00092                 ptr< num_range > a__num_range__mantisa,
00093                 ptr< num_range > a__num_range__exponent);
00094 
00095         //! Marking routine for class num_range. 
00096         virtual void gc_mark();
00097 
00098 private:
00099         //! Maximum value.
00100         lstring max;
00101         //! Is signed?
00102         bool is_signed;
00103         //! Maximum digits count.
00104         ulint digits;
00105         //! Bitwidth.
00106         ulint bits;
00107         //! Range of mantisa.
00108         srp< num_range > mantisa;
00109         //! Range of exponent.
00110         srp< num_range > exponent;
00111         static ptr<reflection_list> reflection;
00112         
00113 }; // num_range
00114 
00115 
00116 end_package(types);
00117 end_package(md);
00118 end_package(lestes);
00119 
00120 #endif // lestes__md__types__num_range_g_hh__included

Generated on Mon Feb 12 18:22:41 2007 for lestes by doxygen 1.5.1-20070107