#include <basic_type.h>
Public Methods | |
| basic_type () | |
| basic_type (unsigned int sign, unsigned int length, unsigned int base_type, unsigned int parse_only=0) | |
| bool | operator== (const basic_type &bt2) const |
| bool | operator< (const basic_type &bt2) const |
| bool | is_no_sign () const |
| void | set_no_sign () |
| bool | is_signed () const |
| void | set_signed () |
| bool | is_unsigned () const |
| void | set_unsigned () |
| bool | parse_only () const |
| void | parse_only (bool po) |
| bool | is_no_type () const |
| void | set_no_type () |
| bool | is_int () const |
| void | set_int () |
| bool | is_char () const |
| void | set_char () |
| bool | is_float () const |
| void | set_float () |
| bool | is_void () const |
| void | set_void () |
| bool | is_ellipsis () const |
| void | set_ellipsis () |
| bool | is_no_length () const |
| void | set_no_length () |
| bool | is_short () const |
| void | set_short () |
| bool | is_long () const |
| void | set_long () |
| bool | is_longlong () const |
| void | set_longlong () |
| bool | is_integer () const |
| bool | is_arithmetic () const |
| bool | is_scalar () const |
| string | to_string () const |
| string | base_name () const |
| string | length_name () const |
| string | sign_name () const |
| int | size () |
| int | alignment () |
| void | merge_in (basic_type &other, Coord coord=Coord::Unknown) |
| void | finish () |
Static Public Attributes | |
| const basic_type | Void |
| const basic_type | Ellipsis |
| const basic_type | SChar |
| const basic_type | UChar |
| const basic_type | SShort |
| const basic_type | UShort |
| const basic_type | SInt |
| const basic_type | UInt |
| const basic_type | SLong |
| const basic_type | ULong |
| const basic_type | SLongLong |
| const basic_type | ULongLong |
| const basic_type | Float |
| const basic_type | Double |
| const basic_type | LongDouble |
| const basic_type | Char |
| const basic_type | Int |
| const basic_type | Signed |
| const basic_type | Unsigned |
| const basic_type | Short |
| const basic_type | Long |
| const basic_type | LongLong |
| const basic_type | IntParseOnly |
| const unsigned int | TARGET_MAX_UCHAR = 256 |
| const unsigned int | TARGET_MAX_INT = INT_MAX |
| const unsigned int | TARGET_MAX_UINT = UINT_MAX |
| const unsigned int | TARGET_MAX_LONG = LONG_MAX |
| const unsigned int | TARGET_MAX_ULONG = ULONG_MAX |
| const unsigned int | CHAR_SIZE = sizeof(char) |
| const unsigned int | CHAR_ALIGN = CHAR_SIZE |
| const unsigned int | SHORT_SIZE = sizeof(short) |
| const unsigned int | SHORT_ALIGN = SHORT_SIZE |
| const unsigned int | INT_SIZE = sizeof(int) |
| const unsigned int | INT_ALIGN = INT_SIZE |
| const unsigned int | FLOAT_SIZE = sizeof(float) |
| const unsigned int | FLOAT_ALIGN = FLOAT_SIZE |
| const unsigned int | DOUBLE_SIZE = sizeof(double) |
| const unsigned int | DOUBLE_ALIGN = DOUBLE_SIZE |
| const unsigned int | LONGDOUBLE_SIZE = sizeof(long double) |
| const unsigned int | LONGDOUBLE_ALIGN = LONGDOUBLE_SIZE |
| const unsigned int | LONG_SIZE = sizeof(long) |
| const unsigned int | LONG_ALIGN = LONG_SIZE |
| const unsigned int | POINTER_SIZE = sizeof(void *) |
| const unsigned int | POINTER_ALIGN = POINTER_SIZE |
| const unsigned int | BYTE_LENGTH = CHAR_BIT |
| const unsigned int | WORD_LENGTH = (INT_SIZE * BYTE_LENGTH) |
Private Methods | |
| unsigned int | base_type () const |
| void | base_type (unsigned int bt) |
| unsigned int | length () const |
| void | length (unsigned int l) |
| unsigned int | sign () const |
| void | sign (unsigned int s) |
Private Attributes | |
| unsigned int | _base_type:3 |
| unsigned int | _length:2 |
| unsigned int | _sign:2 |
| unsigned int | _parse_only:1 |
Static Private Attributes | |
| const unsigned int | NO_TYPE = 0x0 |
| const unsigned int | INT = 0x1 |
| const unsigned int | CHAR = 0x2 |
| const unsigned int | FLOAT = 0x3 |
| const unsigned int | VOID = 0x4 |
| const unsigned int | ELLIPSIS = 0x5 |
| const unsigned int | NO_LENGTH = 0x0 |
| const unsigned int | SHORT = 0x1 |
| const unsigned int | LONG = 0x2 |
| const unsigned int | LONGLONG = 0x3 |
| const unsigned int | NO_SIGN = 0x0 |
| const unsigned int | SIGNED = 0x1 |
| const unsigned int | UNSIGNED = 0x2 |
| const unsigned int | PARSE_ONLY = 0x1 |
|
|
|
|
||||||||||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1.2.13.1 written by Dimitri van Heesch,
© 1997-2001