Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

#120: API/core/atomics/atomic_exchange from md to rst #288

Merged
merged 2 commits into from
Mar 27, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
29 changes: 0 additions & 29 deletions docs/source/API/core/atomics/atomic_exchange.md

This file was deleted.

28 changes: 28 additions & 0 deletions docs/source/API/core/atomics/atomic_exchange.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
``atomic_exchange``
===================

.. role:: cppkokkos(code)
:language: cppkokkos

Header File: <Kokkos_Core.hpp>

Usage
-----

.. code-block:: cpp

old_val = atomic_exchange(ptr_to_value, new_value);

Atomically sets the value at the address given by ``ptr_to_value`` to ``new_value`` and returns the previously stored value at the address.

Description
-----------

.. cppkokkos:function:: template<class T> T atomic_exchange(T* const ptr_to_value, const T new_value);

Atomically executes ``old_value = *ptr_to_value; *ptr_to_value = new_value; return old_value;``,
where ``old_value`` is the value at address ``ptr_to_value`` before doing the exchange.

:param ptr_to_value: address of the value to be updated

:param new_value: new value