1*5f757f3fSDimitry Andric// -*- C++ -*- 2*5f757f3fSDimitry Andric//===----------------------------------------------------------------------===// 3*5f757f3fSDimitry Andric// 4*5f757f3fSDimitry Andric// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 5*5f757f3fSDimitry Andric// See https://llvm.org/LICENSE.txt for license information. 6*5f757f3fSDimitry Andric// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 7*5f757f3fSDimitry Andric// 8*5f757f3fSDimitry Andric//===----------------------------------------------------------------------===// 9*5f757f3fSDimitry Andric 10*5f757f3fSDimitry Andricexport namespace std { 11*5f757f3fSDimitry Andric // [accumulate], accumulate 12*5f757f3fSDimitry Andric using std::accumulate; 13*5f757f3fSDimitry Andric 14*5f757f3fSDimitry Andric // [reduce], reduce 15*5f757f3fSDimitry Andric using std::reduce; 16*5f757f3fSDimitry Andric 17*5f757f3fSDimitry Andric // [inner.product], inner product 18*5f757f3fSDimitry Andric using std::inner_product; 19*5f757f3fSDimitry Andric 20*5f757f3fSDimitry Andric // [transform.reduce], transform reduce 21*5f757f3fSDimitry Andric using std::transform_reduce; 22*5f757f3fSDimitry Andric 23*5f757f3fSDimitry Andric // [partial.sum], partial sum 24*5f757f3fSDimitry Andric using std::partial_sum; 25*5f757f3fSDimitry Andric 26*5f757f3fSDimitry Andric // [exclusive.scan], exclusive scan 27*5f757f3fSDimitry Andric using std::exclusive_scan; 28*5f757f3fSDimitry Andric 29*5f757f3fSDimitry Andric // [inclusive.scan], inclusive scan 30*5f757f3fSDimitry Andric using std::inclusive_scan; 31*5f757f3fSDimitry Andric 32*5f757f3fSDimitry Andric // [transform.exclusive.scan], transform exclusive scan 33*5f757f3fSDimitry Andric using std::transform_exclusive_scan; 34*5f757f3fSDimitry Andric 35*5f757f3fSDimitry Andric // [transform.inclusive.scan], transform inclusive scan 36*5f757f3fSDimitry Andric using std::transform_inclusive_scan; 37*5f757f3fSDimitry Andric 38*5f757f3fSDimitry Andric // [adjacent.difference], adjacent difference 39*5f757f3fSDimitry Andric using std::adjacent_difference; 40*5f757f3fSDimitry Andric 41*5f757f3fSDimitry Andric // [numeric.iota], iota 42*5f757f3fSDimitry Andric using std::iota; 43*5f757f3fSDimitry Andric 44*5f757f3fSDimitry Andric namespace ranges { 45*5f757f3fSDimitry Andric // using std::ranges::iota_result; 46*5f757f3fSDimitry Andric // using std::ranges::iota; 47*5f757f3fSDimitry Andric } // namespace ranges 48*5f757f3fSDimitry Andric 49*5f757f3fSDimitry Andric // [numeric.ops.gcd], greatest common divisor 50*5f757f3fSDimitry Andric using std::gcd; 51*5f757f3fSDimitry Andric 52*5f757f3fSDimitry Andric // [numeric.ops.lcm], least common multiple 53*5f757f3fSDimitry Andric using std::lcm; 54*5f757f3fSDimitry Andric 55*5f757f3fSDimitry Andric // [numeric.ops.midpoint], midpoint 56*5f757f3fSDimitry Andric using std::midpoint; 57*5f757f3fSDimitry Andric} // namespace std 58