Warning, /include/c++/v1/__cxx03/cstring is written in an unsupported language. File is not indexed.
0001 // -*- C++ -*-
0002 //===----------------------------------------------------------------------===//
0003 //
0004 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
0005 // See https://llvm.org/LICENSE.txt for license information.
0006 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
0007 //
0008 //===----------------------------------------------------------------------===//
0009
0010 #ifndef _LIBCPP___CXX03_CSTRING
0011 #define _LIBCPP___CXX03_CSTRING
0012
0013 /*
0014 cstring synopsis
0015
0016 Macros:
0017
0018 NULL
0019
0020 namespace std
0021 {
0022
0023 Types:
0024
0025 size_t
0026
0027 void* memcpy(void* restrict s1, const void* restrict s2, size_t n);
0028 void* memmove(void* s1, const void* s2, size_t n);
0029 char* strcpy (char* restrict s1, const char* restrict s2);
0030 char* strncpy(char* restrict s1, const char* restrict s2, size_t n);
0031 char* strcat (char* restrict s1, const char* restrict s2);
0032 char* strncat(char* restrict s1, const char* restrict s2, size_t n);
0033 int memcmp(const void* s1, const void* s2, size_t n);
0034 int strcmp (const char* s1, const char* s2);
0035 int strncmp(const char* s1, const char* s2, size_t n);
0036 int strcoll(const char* s1, const char* s2);
0037 size_t strxfrm(char* restrict s1, const char* restrict s2, size_t n);
0038 const void* memchr(const void* s, int c, size_t n);
0039 void* memchr( void* s, int c, size_t n);
0040 const char* strchr(const char* s, int c);
0041 char* strchr( char* s, int c);
0042 size_t strcspn(const char* s1, const char* s2);
0043 const char* strpbrk(const char* s1, const char* s2);
0044 char* strpbrk( char* s1, const char* s2);
0045 const char* strrchr(const char* s, int c);
0046 char* strrchr( char* s, int c);
0047 size_t strspn(const char* s1, const char* s2);
0048 const char* strstr(const char* s1, const char* s2);
0049 char* strstr( char* s1, const char* s2);
0050 char* strtok(char* restrict s1, const char* restrict s2);
0051 void* memset(void* s, int c, size_t n);
0052 char* strerror(int errnum);
0053 size_t strlen(const char* s);
0054
0055 } // std
0056
0057 */
0058
0059 #include <__cxx03/__config>
0060 #include <__cxx03/__type_traits/is_constant_evaluated.h>
0061
0062 #include <__cxx03/string.h>
0063
0064 #ifndef _LIBCPP___CXX03_STRING_H
0065 # error <cstring> tried including <string.h> but didn't find libc++'s <string.h> header. \
0066 This usually means that your header search paths are not configured properly. \
0067 The header search paths should contain the C++ Standard Library headers before \
0068 any C Standard Library, and you are probably using compiler flags that make that \
0069 not be the case.
0070 #endif
0071
0072 #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
0073 # pragma GCC system_header
0074 #endif
0075
0076 _LIBCPP_BEGIN_NAMESPACE_STD
0077
0078 using ::size_t _LIBCPP_USING_IF_EXISTS;
0079 using ::memcpy _LIBCPP_USING_IF_EXISTS;
0080 using ::memmove _LIBCPP_USING_IF_EXISTS;
0081 using ::strcpy _LIBCPP_USING_IF_EXISTS;
0082 using ::strncpy _LIBCPP_USING_IF_EXISTS;
0083 using ::strcat _LIBCPP_USING_IF_EXISTS;
0084 using ::strncat _LIBCPP_USING_IF_EXISTS;
0085 using ::memcmp _LIBCPP_USING_IF_EXISTS;
0086 using ::strcmp _LIBCPP_USING_IF_EXISTS;
0087 using ::strncmp _LIBCPP_USING_IF_EXISTS;
0088 using ::strcoll _LIBCPP_USING_IF_EXISTS;
0089 using ::strxfrm _LIBCPP_USING_IF_EXISTS;
0090 using ::memchr _LIBCPP_USING_IF_EXISTS;
0091 using ::strchr _LIBCPP_USING_IF_EXISTS;
0092 using ::strcspn _LIBCPP_USING_IF_EXISTS;
0093 using ::strpbrk _LIBCPP_USING_IF_EXISTS;
0094 using ::strrchr _LIBCPP_USING_IF_EXISTS;
0095 using ::strspn _LIBCPP_USING_IF_EXISTS;
0096 using ::strstr _LIBCPP_USING_IF_EXISTS;
0097 using ::strtok _LIBCPP_USING_IF_EXISTS;
0098 using ::memset _LIBCPP_USING_IF_EXISTS;
0099 using ::strerror _LIBCPP_USING_IF_EXISTS;
0100 using ::strlen _LIBCPP_USING_IF_EXISTS;
0101
0102 _LIBCPP_END_NAMESPACE_STD
0103
0104 #endif // _LIBCPP___CXX03_CSTRING