source: to-imperative/trunk/runtime/rf_short_int.hh @ 835

Last change on this file since 835 was 835, checked in by pooh, 18 years ago
  • A notion of term class is completely removed. All term methods now depend

only on a term type.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 936 bytes
Line 
1// $Source$
2// $Revision: 835 $
3// $Date: 2003-06-09 17:17:55 +0000 (Mon, 09 Jun 2003) $
4// $Author: pooh $
5
6#ifndef __rf_short_int_hh__
7#define __rf_short_int_hh__
8
9#include "rf_types.hh"
10#include "rf_expr.hh"
11#include "rf_term.hh"
12
13namespace rftype
14{
15
16using namespace rfrt;
17
18class ShortInt :
19  public Term
20{
21
22  static unsigned compute_max_len () ;
23
24public:
25
26  static const unsigned max_len;
27
28  static Expr create_expr (intptr_t _n) ;
29
30  static Expr create_expr (pxx::WString& _str);
31
32  inline ShortInt (intptr_t n) ;
33  inline intptr_t to_int () const ;
34
35  inline size_t get_char_len () const ;
36
37  static void ctor (ShortInt* _to, ShortInt const* _from) ;
38  static int compare (ShortInt const* _shint1, ShortInt const* _shint2) ;
39  static uint32_t hash (ShortInt const* _shint) ;
40  static pxx::WString to_string (ShortInt const* _shint) ;
41  static short_type_funcs_t funcs ;
42  static TypeRegister reg ;
43
44};
45
46}
47//  static Expr create_expr (Expr& _expr, int _flag);
48
49#endif // __rf_short_int_hh__
Note: See TracBrowser for help on using the repository browser.