17a984708SDavid Chisnall// -*- C++ -*- 27a984708SDavid Chisnall//===--------------------------- cstring ----------------------------------===// 37a984708SDavid Chisnall// 47a984708SDavid Chisnall// The LLVM Compiler Infrastructure 57a984708SDavid Chisnall// 67a984708SDavid Chisnall// This file is distributed under the University of Illinois Open Source 77a984708SDavid Chisnall// License. See LICENSE.TXT for details. 87a984708SDavid Chisnall// 97a984708SDavid Chisnall//===----------------------------------------------------------------------===// 107a984708SDavid Chisnall 117a984708SDavid Chisnall#ifndef _LIBCPP_CSTRING 127a984708SDavid Chisnall#define _LIBCPP_CSTRING 137a984708SDavid Chisnall 147a984708SDavid Chisnall/* 157a984708SDavid Chisnall cstring synopsis 167a984708SDavid Chisnall 177a984708SDavid ChisnallMacros: 187a984708SDavid Chisnall 197a984708SDavid Chisnall NULL 207a984708SDavid Chisnall 217a984708SDavid Chisnallnamespace std 227a984708SDavid Chisnall{ 237a984708SDavid Chisnall 247a984708SDavid ChisnallTypes: 257a984708SDavid Chisnall 267a984708SDavid Chisnall size_t 277a984708SDavid Chisnall 287a984708SDavid Chisnallvoid* memcpy(void* restrict s1, const void* restrict s2, size_t n); 297a984708SDavid Chisnallvoid* memmove(void* s1, const void* s2, size_t n); 307a984708SDavid Chisnallchar* strcpy (char* restrict s1, const char* restrict s2); 317a984708SDavid Chisnallchar* strncpy(char* restrict s1, const char* restrict s2, size_t n); 327a984708SDavid Chisnallchar* strcat (char* restrict s1, const char* restrict s2); 337a984708SDavid Chisnallchar* strncat(char* restrict s1, const char* restrict s2, size_t n); 347a984708SDavid Chisnallint memcmp(const void* s1, const void* s2, size_t n); 357a984708SDavid Chisnallint strcmp (const char* s1, const char* s2); 367a984708SDavid Chisnallint strncmp(const char* s1, const char* s2, size_t n); 377a984708SDavid Chisnallint strcoll(const char* s1, const char* s2); 387a984708SDavid Chisnallsize_t strxfrm(char* restrict s1, const char* restrict s2, size_t n); 397a984708SDavid Chisnallconst void* memchr(const void* s, int c, size_t n); 407a984708SDavid Chisnall void* memchr( void* s, int c, size_t n); 417a984708SDavid Chisnallconst char* strchr(const char* s, int c); 427a984708SDavid Chisnall char* strchr( char* s, int c); 437a984708SDavid Chisnallsize_t strcspn(const char* s1, const char* s2); 447a984708SDavid Chisnallconst char* strpbrk(const char* s1, const char* s2); 457a984708SDavid Chisnall char* strpbrk( char* s1, const char* s2); 467a984708SDavid Chisnallconst char* strrchr(const char* s, int c); 477a984708SDavid Chisnall char* strrchr( char* s, int c); 487a984708SDavid Chisnallsize_t strspn(const char* s1, const char* s2); 497a984708SDavid Chisnallconst char* strstr(const char* s1, const char* s2); 507a984708SDavid Chisnall char* strstr( char* s1, const char* s2); 517a984708SDavid Chisnallchar* strtok(char* restrict s1, const char* restrict s2); 527a984708SDavid Chisnallvoid* memset(void* s, int c, size_t n); 537a984708SDavid Chisnallchar* strerror(int errnum); 547a984708SDavid Chisnallsize_t strlen(const char* s); 557a984708SDavid Chisnall 567a984708SDavid Chisnall} // std 577a984708SDavid Chisnall 587a984708SDavid Chisnall*/ 597a984708SDavid Chisnall 607a984708SDavid Chisnall#include <__config> 617a984708SDavid Chisnall#include <string.h> 627a984708SDavid Chisnall 637a984708SDavid Chisnall#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) 647a984708SDavid Chisnall#pragma GCC system_header 657a984708SDavid Chisnall#endif 667a984708SDavid Chisnall 677a984708SDavid Chisnall_LIBCPP_BEGIN_NAMESPACE_STD 687a984708SDavid Chisnall 697a984708SDavid Chisnallusing ::size_t; 707a984708SDavid Chisnallusing ::memcpy; 717a984708SDavid Chisnallusing ::memmove; 727a984708SDavid Chisnallusing ::strcpy; 737a984708SDavid Chisnallusing ::strncpy; 747a984708SDavid Chisnallusing ::strcat; 757a984708SDavid Chisnallusing ::strncat; 767a984708SDavid Chisnallusing ::memcmp; 777a984708SDavid Chisnallusing ::strcmp; 787a984708SDavid Chisnallusing ::strncmp; 797a984708SDavid Chisnallusing ::strcoll; 807a984708SDavid Chisnallusing ::strxfrm; 817a984708SDavid Chisnallusing ::memchr; 827a984708SDavid Chisnallusing ::strchr; 837a984708SDavid Chisnallusing ::strcspn; 847a984708SDavid Chisnallusing ::strpbrk; 857a984708SDavid Chisnallusing ::strrchr; 867a984708SDavid Chisnallusing ::strspn; 877a984708SDavid Chisnallusing ::strstr; 88*854fa44bSDimitry Andric#ifndef _LIBCPP_HAS_NO_THREAD_UNSAFE_C_FUNCTIONS 897a984708SDavid Chisnallusing ::strtok; 90*854fa44bSDimitry Andric#endif 917a984708SDavid Chisnallusing ::memset; 927a984708SDavid Chisnallusing ::strerror; 937a984708SDavid Chisnallusing ::strlen; 947a984708SDavid Chisnall 957a984708SDavid Chisnall_LIBCPP_END_NAMESPACE_STD 967a984708SDavid Chisnall 977a984708SDavid Chisnall#endif // _LIBCPP_CSTRING 98