80 lines
3.8 KiB
C
80 lines
3.8 KiB
C
|
// -*- C++ -*-
|
||
|
//===-- glue_memory_defs.h ------------------------------------------------===//
|
||
|
//
|
||
|
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
|
||
|
// See https://llvm.org/LICENSE.txt for license information.
|
||
|
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
|
||
|
//
|
||
|
//===----------------------------------------------------------------------===//
|
||
|
|
||
|
#ifndef __PSTL_glue_memory_defs_H
|
||
|
#define __PSTL_glue_memory_defs_H
|
||
|
|
||
|
#include "execution_defs.h"
|
||
|
|
||
|
namespace std
|
||
|
{
|
||
|
|
||
|
// [uninitialized.copy]
|
||
|
|
||
|
template <class _ExecutionPolicy, class _InputIterator, class _ForwardIterator>
|
||
|
__pstl::__internal::__enable_if_execution_policy<_ExecutionPolicy, _ForwardIterator>
|
||
|
uninitialized_copy(_ExecutionPolicy&& __exec, _InputIterator __first, _InputIterator __last, _ForwardIterator __result);
|
||
|
|
||
|
template <class _ExecutionPolicy, class _InputIterator, class _Size, class _ForwardIterator>
|
||
|
__pstl::__internal::__enable_if_execution_policy<_ExecutionPolicy, _ForwardIterator>
|
||
|
uninitialized_copy_n(_ExecutionPolicy&& __exec, _InputIterator __first, _Size __n, _ForwardIterator __result);
|
||
|
|
||
|
// [uninitialized.move]
|
||
|
|
||
|
template <class _ExecutionPolicy, class _InputIterator, class _ForwardIterator>
|
||
|
__pstl::__internal::__enable_if_execution_policy<_ExecutionPolicy, _ForwardIterator>
|
||
|
uninitialized_move(_ExecutionPolicy&& __exec, _InputIterator __first, _InputIterator __last, _ForwardIterator __result);
|
||
|
|
||
|
template <class _ExecutionPolicy, class _InputIterator, class _Size, class _ForwardIterator>
|
||
|
__pstl::__internal::__enable_if_execution_policy<_ExecutionPolicy, _ForwardIterator>
|
||
|
uninitialized_move_n(_ExecutionPolicy&& __exec, _InputIterator __first, _Size __n, _ForwardIterator __result);
|
||
|
|
||
|
// [uninitialized.fill]
|
||
|
|
||
|
template <class _ExecutionPolicy, class _ForwardIterator, class _Tp>
|
||
|
__pstl::__internal::__enable_if_execution_policy<_ExecutionPolicy, void>
|
||
|
uninitialized_fill(_ExecutionPolicy&& __exec, _ForwardIterator __first, _ForwardIterator __last, const _Tp& __value);
|
||
|
|
||
|
template <class _ExecutionPolicy, class _ForwardIterator, class _Size, class _Tp>
|
||
|
__pstl::__internal::__enable_if_execution_policy<_ExecutionPolicy, _ForwardIterator>
|
||
|
uninitialized_fill_n(_ExecutionPolicy&& __exec, _ForwardIterator __first, _Size __n, const _Tp& __value);
|
||
|
|
||
|
// [specialized.destroy]
|
||
|
|
||
|
template <class _ExecutionPolicy, class _ForwardIterator>
|
||
|
__pstl::__internal::__enable_if_execution_policy<_ExecutionPolicy, void>
|
||
|
destroy(_ExecutionPolicy&& __exec, _ForwardIterator __first, _ForwardIterator __last);
|
||
|
|
||
|
template <class _ExecutionPolicy, class _ForwardIterator, class _Size>
|
||
|
__pstl::__internal::__enable_if_execution_policy<_ExecutionPolicy, _ForwardIterator>
|
||
|
destroy_n(_ExecutionPolicy&& __exec, _ForwardIterator __first, _Size __n);
|
||
|
|
||
|
// [uninitialized.construct.default]
|
||
|
|
||
|
template <class _ExecutionPolicy, class _ForwardIterator>
|
||
|
__pstl::__internal::__enable_if_execution_policy<_ExecutionPolicy, void>
|
||
|
uninitialized_default_construct(_ExecutionPolicy&& __exec, _ForwardIterator __first, _ForwardIterator __last);
|
||
|
|
||
|
template <class _ExecutionPolicy, class _ForwardIterator, class _Size>
|
||
|
__pstl::__internal::__enable_if_execution_policy<_ExecutionPolicy, _ForwardIterator>
|
||
|
uninitialized_default_construct_n(_ExecutionPolicy&& __exec, _ForwardIterator __first, _Size __n);
|
||
|
|
||
|
// [uninitialized.construct.value]
|
||
|
|
||
|
template <class _ExecutionPolicy, class _ForwardIterator>
|
||
|
__pstl::__internal::__enable_if_execution_policy<_ExecutionPolicy, void>
|
||
|
uninitialized_value_construct(_ExecutionPolicy&& __exec, _ForwardIterator __first, _ForwardIterator __last);
|
||
|
|
||
|
template <class _ExecutionPolicy, class _ForwardIterator, class _Size>
|
||
|
__pstl::__internal::__enable_if_execution_policy<_ExecutionPolicy, _ForwardIterator>
|
||
|
uninitialized_value_construct_n(_ExecutionPolicy&& __exec, _ForwardIterator __first, _Size __n);
|
||
|
|
||
|
} // namespace std
|
||
|
#endif /* __PSTL_glue_memory_defs_H */
|