81 lines · plain
1// -*- C++ -*-2//===----------------------------------------------------------------------===//3//4// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.5// See https://llvm.org/LICENSE.txt for license information.6// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception7//8//===----------------------------------------------------------------------===//9 10#ifndef _LIBCPP___CXX03_CTIME11#define _LIBCPP___CXX03_CTIME12 13/*14 ctime synopsis15 16Macros:17 18 NULL19 CLOCKS_PER_SEC20 TIME_UTC // C++1721 22namespace std23{24 25Types:26 27 clock_t28 size_t29 time_t30 tm31 timespec // C++1732 33clock_t clock();34double difftime(time_t time1, time_t time0);35time_t mktime(tm* timeptr);36time_t time(time_t* timer);37char* asctime(const tm* timeptr);38char* ctime(const time_t* timer);39tm* gmtime(const time_t* timer);40tm* localtime(const time_t* timer);41size_t strftime(char* restrict s, size_t maxsize, const char* restrict format,42 const tm* restrict timeptr);43int timespec_get( struct timespec *ts, int base); // C++1744} // std45 46*/47 48#include <__cxx03/__config>49 50// <time.h> is not provided by libc++51#if __has_include(<time.h>)52# include <time.h>53# ifdef _LIBCPP___CXX03_TIME_H54# error "If libc++ starts defining <time.h>, the __has_include check should move to libc++'s <time.h>"55# endif56#endif57 58#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)59# pragma GCC system_header60#endif61 62_LIBCPP_BEGIN_NAMESPACE_STD63 64using ::clock_t _LIBCPP_USING_IF_EXISTS;65using ::size_t _LIBCPP_USING_IF_EXISTS;66using ::time_t _LIBCPP_USING_IF_EXISTS;67using ::tm _LIBCPP_USING_IF_EXISTS;68using ::clock _LIBCPP_USING_IF_EXISTS;69using ::difftime _LIBCPP_USING_IF_EXISTS;70using ::mktime _LIBCPP_USING_IF_EXISTS;71using ::time _LIBCPP_USING_IF_EXISTS;72using ::asctime _LIBCPP_USING_IF_EXISTS;73using ::ctime _LIBCPP_USING_IF_EXISTS;74using ::gmtime _LIBCPP_USING_IF_EXISTS;75using ::localtime _LIBCPP_USING_IF_EXISTS;76using ::strftime _LIBCPP_USING_IF_EXISTS;77 78_LIBCPP_END_NAMESPACE_STD79 80#endif // _LIBCPP___CXX03_CTIME81