/*
*******************************************************************************
*
*   Copyright (C) 2009, International Business Machines
*   Corporation and others.  All Rights Reserved.
*
*******************************************************************************
*   file name:  std_string.h
*   encoding:   US-ASCII
*   tab size:   8 (not used)
*   indentation:4
*
*   created on: 2009feb19
*   created by: Markus W. Scherer
*/

#ifndef __STD_STRING_H__
#define __STD_STRING_H__

/**
 * \file 
 * \brief C++ API: Central ICU header for including the C++ standard <string>
 *                 header and for related definitions.
 */

#include "unicode/utypes.h"

/**
 * \def U_HAVE_STD_STRING
 * Define whether the standard C++ (STL) <string> header is available.
 * @draft ICU 4.2
 */
#ifndef U_HAVE_STD_STRING
#define U_HAVE_STD_STRING 1
#endif

#if U_HAVE_STD_STRING

#include <string>

/**
 * \def U_STD_NS
 * Define the namespace to use for standard C++ (STL) classes.
 * Either std or empty.
 * @draft ICU 4.2
 */

/**
 * \def U_STD_NSQ
 * Define the namespace qualifier to use for standard C++ (STL) classes.
 * Either std:: or empty.
 * For example,
 *   U_STD_NSQ string StringFromUnicodeString(const UnicodeString &unistr);
 * @draft ICU 4.2
 */

/**
 * \def U_STD_NS_USE
 * This is used to specify that the rest of the code uses the
 * standard (STL) namespace.
 * Either "using namespace std;" or empty.
 * @draft ICU 4.2
 */
#ifndef U_STD_NSQ
#   if U_HAVE_NAMESPACE
#       define U_STD_NS std
#       define U_STD_NSQ U_STD_NS::
#       define U_STD_NS_USE using namespace U_STD_NS;
#   else
#       define U_STD_NS
#       define U_STD_NSQ
#       define U_STD_NS_USE
#   endif
#endif

#endif  // U_HAVE_STD_STRING

#endif  // __STD_STRING_H__
