C++ TargetRTS
Loading...
Searching...
No Matches
RTInteger.h
1/*
2 * Licensed Materials - Property of HCL and/or IBM
3 * Copyright HCL Technologies Ltd. 2016, 2021. All Rights Reserved.
4 * Copyright IBM Corporation 1999, 2016. All Rights Reserved.
5 *
6 * U.S. Government Users Restricted Rights - Use, duplication or
7 * disclosure restricted by GSA ADP Schedule.
8 */
9
10#ifndef __RTInteger_h__
11#define __RTInteger_h__ included
12
13#ifdef PRAGMA
14#pragma interface
15#endif
16
17#ifndef __RTDataObject_h__
18#include <RTDataObject.h>
19#endif
20
21class RTInteger : public RTDataObject
22{
23public:
24 int value;
25
26 RTInteger( int = 0 ); //lint !e1931
27 RTInteger( const RTInteger & );
28 virtual ~RTInteger( void );
29
30 RTS_INLINE operator int( void ) const;
31 RTInteger & operator=( int );
32 RTInteger & operator=( const RTInteger & );
33
34 virtual int operator==( const RTDataObject & ) const override;
35
36 RTS_INLINE int operator ~ ( void ) const;
37 RTS_INLINE int operator ! ( void ) const;
38
39 // prefix forms (e.g. ++i)
40 RTS_INLINE RTInteger & operator++( void );
41 RTS_INLINE RTInteger & operator--( void );
42
43#if INTEGER_POSTFIX
44 // Many, but not all, compilers support these postfix operators.
45
46 RTS_INLINE int operator++( int );
47 RTS_INLINE int operator--( int );
48#endif
49
50 virtual const RTObject_class * getClassData( void ) const override;
51 static const RTObject_class classData;
52
53#define RTType_RTInteger ( RTInteger::classData )
54};
55
56extern const RTInteger EmptyInteger;
57extern const RTInteger DefaultDelay;
58
60{
61 const void * data;
62 const RTObject_class * type;
63
64 RTS_INLINE RTTypedValue_RTInteger( const RTInteger & ); //lint !e1931
65 RTS_INLINE RTTypedValue_RTInteger( const RTInteger &,
66 const RTObject_class * );
67}; //lint !e1712
68
69#if RTS_INLINES
70#include <RTInteger.inl>
71#endif
72
73#endif // __RTInteger_h__
Provides a common interface to certain data type implementations (e.g.
Definition: RTDataObject.h:33
Definition: RTInteger.h:22
A type descriptor providing information about a type.
Definition: RTObject_class.h:64
Definition: RTInteger.h:60