13e519524SHoward Hinnant// -*- C++ -*- 23e519524SHoward Hinnant//===--------------------------- cstring ----------------------------------===// 33e519524SHoward Hinnant// 4*5b08a8a4SHoward Hinnant// The LLVM Compiler Infrastructure 53e519524SHoward Hinnant// 63e519524SHoward Hinnant// This file is distributed under the University of Illinois Open Source 73e519524SHoward Hinnant// License. See LICENSE.TXT for details. 83e519524SHoward Hinnant// 93e519524SHoward Hinnant//===----------------------------------------------------------------------===// 103e519524SHoward Hinnant 113e519524SHoward Hinnant#ifndef _LIBCPP_CSTRING 123e519524SHoward Hinnant#define _LIBCPP_CSTRING 133e519524SHoward Hinnant 143e519524SHoward Hinnant/* 153e519524SHoward Hinnant cstring synopsis 163e519524SHoward Hinnant 173e519524SHoward HinnantMacros: 183e519524SHoward Hinnant 193e519524SHoward Hinnant NULL 203e519524SHoward Hinnant 213e519524SHoward Hinnantnamespace std 223e519524SHoward Hinnant{ 233e519524SHoward Hinnant 243e519524SHoward HinnantTypes: 253e519524SHoward Hinnant 263e519524SHoward Hinnant size_t 273e519524SHoward Hinnant 283e519524SHoward Hinnantvoid* memcpy(void* restrict s1, const void* restrict s2, size_t n); 293e519524SHoward Hinnantvoid* memmove(void* s1, const void* s2, size_t n); 303e519524SHoward Hinnantchar* strcpy (char* restrict s1, const char* restrict s2); 313e519524SHoward Hinnantchar* strncpy(char* restrict s1, const char* restrict s2, size_t n); 323e519524SHoward Hinnantchar* strcat (char* restrict s1, const char* restrict s2); 333e519524SHoward Hinnantchar* strncat(char* restrict s1, const char* restrict s2, size_t n); 343e519524SHoward Hinnantint memcmp(const void* s1, const void* s2, size_t n); 353e519524SHoward Hinnantint strcmp (const char* s1, const char* s2); 363e519524SHoward Hinnantint strncmp(const char* s1, const char* s2, size_t n); 373e519524SHoward Hinnantint strcoll(const char* s1, const char* s2); 383e519524SHoward Hinnantsize_t strxfrm(char* restrict s1, const char* restrict s2, size_t n); 393e519524SHoward Hinnantconst void* memchr(const void* s, int c, size_t n); 403e519524SHoward Hinnant void* memchr( void* s, int c, size_t n); 413e519524SHoward Hinnantconst char* strchr(const char* s, int c); 423e519524SHoward Hinnant char* strchr( char* s, int c); 433e519524SHoward Hinnantsize_t strcspn(const char* s1, const char* s2); 443e519524SHoward Hinnantconst char* strpbrk(const char* s1, const char* s2); 453e519524SHoward Hinnant char* strpbrk( char* s1, const char* s2); 463e519524SHoward Hinnantconst char* strrchr(const char* s, int c); 473e519524SHoward Hinnant char* strrchr( char* s, int c); 483e519524SHoward Hinnantsize_t strspn(const char* s1, const char* s2); 493e519524SHoward Hinnantconst char* strstr(const char* s1, const char* s2); 503e519524SHoward Hinnant char* strstr( char* s1, const char* s2); 513e519524SHoward Hinnantchar* strtok(char* restrict s1, const char* restrict s2); 523e519524SHoward Hinnantvoid* memset(void* s, int c, size_t n); 533e519524SHoward Hinnantchar* strerror(int errnum); 543e519524SHoward Hinnantsize_t strlen(const char* s); 553e519524SHoward Hinnant 563e519524SHoward Hinnant} // std 573e519524SHoward Hinnant 583e519524SHoward Hinnant*/ 593e519524SHoward Hinnant 603e519524SHoward Hinnant#include <__config> 613e519524SHoward Hinnant#include <string.h> 623e519524SHoward Hinnant 633e519524SHoward Hinnant#pragma GCC system_header 643e519524SHoward Hinnant 653e519524SHoward Hinnant_LIBCPP_BEGIN_NAMESPACE_STD 663e519524SHoward Hinnant 673e519524SHoward Hinnantusing ::size_t; 683e519524SHoward Hinnantusing ::memcpy; 693e519524SHoward Hinnantusing ::memmove; 703e519524SHoward Hinnantusing ::strcpy; 713e519524SHoward Hinnantusing ::strncpy; 723e519524SHoward Hinnantusing ::strcat; 733e519524SHoward Hinnantusing ::strncat; 743e519524SHoward Hinnantusing ::memcmp; 753e519524SHoward Hinnantusing ::strcmp; 763e519524SHoward Hinnantusing ::strncmp; 773e519524SHoward Hinnantusing ::strcoll; 783e519524SHoward Hinnantusing ::strxfrm; 793e519524SHoward Hinnant 803e519524SHoward Hinnantinline _LIBCPP_INLINE_VISIBILITY const void* memchr(const void* __s, int __c, size_t __n) {return ::memchr(__s, __c, __n);} 813e519524SHoward Hinnantinline _LIBCPP_INLINE_VISIBILITY void* memchr( void* __s, int __c, size_t __n) {return ::memchr(__s, __c, __n);} 823e519524SHoward Hinnant 833e519524SHoward Hinnantinline _LIBCPP_INLINE_VISIBILITY const char* strchr(const char* __s, int __c) {return ::strchr(__s, __c);} 843e519524SHoward Hinnantinline _LIBCPP_INLINE_VISIBILITY char* strchr( char* __s, int __c) {return ::strchr(__s, __c);} 853e519524SHoward Hinnant 863e519524SHoward Hinnantusing ::strcspn; 873e519524SHoward Hinnant 883e519524SHoward Hinnantinline _LIBCPP_INLINE_VISIBILITY const char* strpbrk(const char* __s1, const char* __s2) {return ::strpbrk(__s1, __s2);} 893e519524SHoward Hinnantinline _LIBCPP_INLINE_VISIBILITY char* strpbrk( char* __s1, const char* __s2) {return ::strpbrk(__s1, __s2);} 903e519524SHoward Hinnant 913e519524SHoward Hinnantinline _LIBCPP_INLINE_VISIBILITY const char* strrchr(const char* __s, int __c) {return ::strrchr(__s, __c);} 923e519524SHoward Hinnantinline _LIBCPP_INLINE_VISIBILITY char* strrchr( char* __s, int __c) {return ::strrchr(__s, __c);} 933e519524SHoward Hinnant 943e519524SHoward Hinnantusing ::strspn; 953e519524SHoward Hinnant 963e519524SHoward Hinnantinline _LIBCPP_INLINE_VISIBILITY const char* strstr(const char* __s1, const char* __s2) {return ::strstr(__s1, __s2);} 973e519524SHoward Hinnantinline _LIBCPP_INLINE_VISIBILITY char* strstr( char* __s1, const char* __s2) {return ::strstr(__s1, __s2);} 983e519524SHoward Hinnant 993e519524SHoward Hinnantusing ::strtok; 1003e519524SHoward Hinnantusing ::memset; 1013e519524SHoward Hinnantusing ::strerror; 1023e519524SHoward Hinnantusing ::strlen; 1033e519524SHoward Hinnant 1043e519524SHoward Hinnant_LIBCPP_END_NAMESPACE_STD 1053e519524SHoward Hinnant 1063e519524SHoward Hinnant#endif // _LIBCPP_CSTRING 107