Annotation of parser3/src/include/pa_types.h, revision 1.37
1.17 paf 1: /** @file
1.18 paf 2: Parser: generally used types & constants decls.
3:
1.36 paf 4: Copyright (c) 2001, 2002 ArtLebedev Group (http://www.artlebedev.com)
1.37 ! paf 5: Author: Alexandr Petrosian <paf@design.ru> (http://paf.design.ru)
1.8 paf 6:
1.37 ! paf 7: $Id: pa_types.h,v 1.36 2002/02/08 07:27:45 paf Exp $
1.2 paf 8: */
9:
1.1 paf 10: #ifndef PA_TYPES_H
11: #define PA_TYPES_H
12:
1.23 paf 13: #include "pa_config_includes.h"
1.2 paf 14:
1.23 paf 15: #if _MSC_VER
1.27 parser 16: // using this in calls to parent constructors
17: #pragma warning(disable:4355)
18:
19: //# pragma warning(disable:4065) // switch statement contains 'default'
1.23 paf 20: // but no 'case' labels
1.27 parser 21: //# pragma warning(disable:4800) // (bool)(1&2)
22:
23: // assignment operator could not be generated
24: //#pragma warning(disable:4512)
1.28 parser 25:
26: // identifier was truncated to '255' characters in the debug information
27: #pragma warning(disable:4786)
1.35 paf 28:
29: #ifdef _DEBUG
30: # define _CRTDBG_MAP_ALLOC
31: // When the _CRTDBG_MAP_ALLOC flag is defined in the debug version of an application,
32: // the base version of the heap functions are directly mapped to their debug versions
33: #endif
1.27 parser 34:
1.14 paf 35: #endif
1.4 paf 36:
1.17 paf 37: /// for rare cases of undefined length using this-sized strings
1.15 paf 38: #define MAX_STRING 0x400
1.17 paf 39: /// for snprintf(buf, MAX_NUMBER, "%.2f")
1.12 paf 40: #define MAX_NUMBER 40
1.2 paf 41:
1.34 paf 42: ///{@ handy types
43: #undef uchar
44: typedef unsigned char uchar;
45:
1.33 paf 46: #undef ushort
47: typedef unsigned short ushort;
48: const size_t MAX_USHORT=1<<sizeof(ushort)*8-1;
1.34 paf 49:
1.1 paf 50: #undef uint
1.33 paf 51: typedef unsigned int uint;
1.34 paf 52:
1.24 paf 53: #undef ulong
54: typedef unsigned long ulong;
1.34 paf 55: ///}@
1.2 paf 56:
1.7 paf 57: #ifndef NO_STRING_ORIGIN
1.17 paf 58: /// all String pieces hold information of where they come from
1.29 paf 59:
1.30 paf 60: #include "pa_pragma_pack_begin.h"
1.4 paf 61: struct Origin {
1.17 paf 62: const char *file; ///< macros file name | load file name | sql query text
1.29 paf 63: unsigned short line; ///< file line no | record no
1.7 paf 64: };
1.32 paf 65: #define ORIGIN_FILE_LINE_FORMAT "%.300s(%d)"
66:
1.30 paf 67: #include "pa_pragma_pack_end.h"
1.29 paf 68:
1.2 paf 69: #endif
1.1 paf 70:
71: #endif
E-mail: