|
00001 /* 00002 * File: reclstl.h 00003 * 00004 * Purpose: recls STL mapping. 00005 * 00006 * Created: 10th September 2003 00007 * Updated: 26th March 2004 00008 * 00009 * Author: Matthew Wilson, Synesis Software Pty Ltd. 00010 * 00011 * License: (Licensed under the Synesis Software Standard Source License) 00012 * 00013 * Copyright (C) 2002-2004, Synesis Software Pty Ltd. 00014 * 00015 * All rights reserved. 00016 * 00017 * www: http://www.synesis.com.au/software 00018 * http://www.recls.org/ 00019 * 00020 * email: submissions@recls.org for submissions 00021 * admin@recls.org for other enquiries 00022 * 00023 * Redistribution and use in source and binary forms, with or 00024 * without modification, are permitted provided that the following 00025 * conditions are met: 00026 * 00027 * (i) Redistributions of source code must retain the above 00028 * copyright notice and contact information, this list of 00029 * conditions and the following disclaimer. 00030 * 00031 * (ii) Any derived versions of this software (howsoever modified) 00032 * remain the sole property of Synesis Software. 00033 * 00034 * (iii) Any derived versions of this software (howsoever modified) 00035 * remain subject to all these conditions. 00036 * 00037 * (iv) Neither the name of Synesis Software nor the names of any 00038 * subdivisions, employees or agents of Synesis Software, nor the 00039 * names of any other contributors to this software may be used to 00040 * endorse or promote products derived from this software without 00041 * specific prior written permission. 00042 * 00043 * This source code is provided by Synesis Software "as is" and any 00044 * warranties, whether expressed or implied, including, but not 00045 * limited to, the implied warranties of merchantability and 00046 * fitness for a particular purpose are disclaimed. In no event 00047 * shall the Synesis Software be liable for any direct, indirect, 00048 * incidental, special, exemplary, or consequential damages 00049 * (including, but not limited to, procurement of substitute goods 00050 * or services; loss of use, data, or profits; or business 00051 * interruption) however caused and on any theory of liability, 00052 * whether in contract, strict liability, or tort (including 00053 * negligence or otherwise) arising in any way out of the use of 00054 * this software, even if advised of the possibility of such 00055 * damage. 00056 * 00057 * 00058 00059 00060 #ifndef RECLS_INCL_H_RECLSTL 00061 #define RECLS_INCL_H_RECLSTL 00062 00063 /* File version */ 00064 #ifndef RECLS_DOCUMENTATION_SKIP_SECTION 00065 # define RECLS_VER_H_RECLSTL_MAJOR 1 00066 # define RECLS_VER_H_RECLSTL_MINOR 0 00067 # define RECLS_VER_H_RECLSTL_REVISION 4 00068 # define RECLS_VER_H_RECLSTL_EDIT 6 00069 #endif /* !RECLS_DOCUMENTATION_SKIP_SECTION */ 00070 00071 /* 00072 * Includes 00073 */ 00074 00075 #include "recls.h" 00076 00077 #if RECLS_VER < RECLS_VER_1_1_1 00078 # error The recls STL mapping requires version 1.1.1 or later of the recls C API 00079 #endif /* RECLS_VER < 1.1.1 */ 00080 00081 #ifdef RECLS_STL_STRING_HEADER 00082 # include RECLS_STL_STRING_HEADER 00083 #else 00084 # include <string> 00085 #endif /* RECLS_STL_STRING_HEADER */ 00086 00089 /* 00090 * Namespace 00091 */ 00092 00093 #if !defined(RECLS_NO_NAMESPACE) 00094 namespace recls 00095 { 00096 00097 namespace stl 00098 { 00099 #endif /* !RECLS_NO_NAMESPACE */ 00100 00101 /* 00102 * Typedefs 00103 */ 00104 00105 #ifdef RECLS_DOCUMENTATION_SKIP_SECTION 00106 00115 typedef std::string string_t; 00116 00117 #else /* ? RECLS_DOCUMENTATION_SKIP_SECTION */ 00118 00119 # ifdef RECLS_STL_STRING_HEADER 00120 # ifndef RECLS_STL_STRING_T 00121 # error RECLS_STL_STRING_T must be defined when RECLS_STL_STRING_HEADER is defined 00122 # endif /* !RECLS_STRING_T */ 00123 typedef RECLS_STL_STRING_T string_t; 00124 # else 00125 # if defined(RECLS_COMPILER_IS_DMC) 00126 typedef string string_t; 00127 # else 00128 typedef std::string string_t; 00129 # endif /* RECLS_COMPILER_IS_DMC */ 00130 # endif /* RECLS_STRING_HEADER */ 00131 #endif /* RECLS_DOCUMENTATION_SKIP_SECTION */ 00132 00133 /* 00134 * Namespace 00135 */ 00136 00137 #if !defined(RECLS_NO_NAMESPACE) 00138 } /* namespace stl */ 00139 } /* namespace recls */ 00140 namespace reclstl = ::recls::stl; 00141 #endif /* !RECLS_NO_NAMESPACE */ 00142 00143 /* 00144 00145 #endif /* !RECLS_INCL_H_RECLSTL */ 00146 00147 /*
|
recls Library documentation © Synesis Software Pty Ltd, 2001-2004 |