DEENESPTFRRUARHIKOZHNL

class ara::core::Promise

[SWS_CORE_00340] Upstream: RS_AP_00130

template <typename T, typename E = ErrorCode> class Promise final {...};

ara::core specific variant of std::promise class The implementation shall flag the condition E!=ara::core::ErrorCode as a compile error.

Header-Datei#include "ara/core/future.h"
Forwarding-Header#include "ara/core/core_fwd.h"
Scopenamespace ara::core

User GuideAI-GENERATED

Provides an asynchronous channel to pass values or errors across threads to an associated future.
AI-GENERATED unreviewed Model: gemini-3.8-flash-medium · Effort: medium · Temperature: not controllable · Prompt: 5c323bf911df Provenance Open questions (1)
translated from the German guidegemini-3.8-flash-low · 2026-10-13 · German original

Provides an asynchronous channel to pass values or errors across threads to an associated future.

The class ara::core::Promise acts as an asynchronous write endpoint to transfer values, errors, or results across threads into a shared state [SWS_CORE_00341]. Read access is performed via a Future that can be retrieved exactly once and is released when the result is provided [SWS_CORE_00344]. Because the class is non-copyable, the state remains strictly in unique ownership via move semantics, where setting the result multiple times or retrieving the future multiple times leads to standardized violations.

Context

The class ara::core::Promise represents the Adaptive Platform-specific manifestation of the concept std::promise known from the C++ standard. It is defined in the header ara/core/future.h as a template Promise<T, E = ErrorCode> and serves as an asynchronous write endpoint of a shared state (shared state). Via this channel, a producer passes either a computed output value, an error, or an aggregated ara::core::Result across threads. The corresponding receiver side accesses the result via an associated ara::core::Future, which is retrieved via the instance method get_future [SWS_CORE_00344]. In contrast to the standard C++ mechanism, which is primarily based on exceptions, AUTOSAR Adaptive anchors the error-typed paradigm: If the error type E is chosen to be not equal to ara::core::ErrorCode, the specification enforces a compilation error.

Lifecycle

An instance is regularly created via the parameterless default constructor, which behaves like the corresponding constructor of std::promise, is thread-safe, and establishes a new shared state [SWS_CORE_00341]. To guarantee unique ownership of this state, copy operations are completely prohibited: Both the copy constructor [SWS_CORE_00350] and the copy assignment operator [SWS_CORE_00351] are declared as deleted (delete).

However, the class supports move semantics. The move constructor takes over the shared state of the source instance [SWS_CORE_00342]. Upon a move assignment, the target instance abandons its previous shared state and takes over the state of the passed object analogously to a swap operation [SWS_CORE_00343]. In addition, the method swap allows swapping the internal state with another instance [SWS_CORE_00352]. Upon destruction via the destructor, a still held shared state is released or abandoned [SWS_CORE_00349]. While the default constructor is designed to be thread-safe [SWS_CORE_00341], move operations, assignments, swap, and destruction are not thread-safe ([SWS_CORE_00342], [SWS_CORE_00343], [SWS_CORE_00352], [SWS_CORE_00349]).

PromiseStates Init Created SharedStateInitialisiert Init->Created Promise() FutureRetrieved FutureAbgerufen Created->FutureRetrieved get_future() Ready SharedStateReady Created->Ready set_value() / SetError() / SetResult() NoState KeinSharedState Created->NoState Move / operator= Destroyed Beendet Created->Destroyed ~Promise() FutureRetrieved->Ready set_value() / SetError() / SetResult() FutureRetrieved->NoState Move / operator= FutureRetrieved->Destroyed ~Promise() Ready->NoState Move / operator= Ready->Destroyed ~Promise() NoState->Destroyed ~Promise()

State diagram: Lifecycle and state transitions of the shared state in a Promise instance. Sources: [SWS_CORE_00341], [SWS_CORE_00342], [SWS_CORE_00343], [SWS_CORE_00344], [SWS_CORE_00345], [SWS_CORE_00349], [SWS_CORE_00353], [SWS_CORE_00355]

Usage Path

A typical provisioning sequence comprises the following steps:

  1. Creation: The producer instantiates a ara::core::Promise<T, E> [SWS_CORE_00341].
  2. Retrieving the future: Prior to starting asynchronous processing, the producer calls get_future() [SWS_CORE_00344]. Because only a single associated Future is permitted per promise, this call may occur exactly once. The returned Future is passed to the consuming thread.
  3. Setting the result: After completion of the asynchronous operation, the producer transfers the result into the shared state and transitions it to the ready state. For this purpose, thread-safe overloads for copy and move operations are available in each case:
Asynchronous provision via Promise and FutureErzeugerPromiseSharedStateFutureVerbraucherPromise()Erzeuge Shared Stateget_future()Create Future with shared statePass FuturealtErfolgsfall: Wert bereitstellenset_value(value)Speichere Wert, setze Zustand readyFehlerfall: Fehler meldenSetError(error)Speichere Error, setze Zustand readyResult-Fall: Resultat setzenSetResult(result)Speichere Result, setze Zustand readyErgebnis abfragenLese Zustand

Sequence diagram: Call and synchronization sequence between producer, promise, shared state, and consumer. Sources: [SWS_CORE_00341], [SWS_CORE_00344], [SWS_CORE_00345], [SWS_CORE_00353], [SWS_CORE_00355]

Error Scenarios

The specification defines strict preconditions for all interactions with the shared state, non-compliance with which leads to standardized violations (Violations):

  • Multiple retrieval of the future: If get_future() is called more than once for the same shared state, the violation IsoStdFutureErrcFutureAlreadyRetrievedViolation occurs [SWS_CORE_00344].
  • Missing shared state: If the called instance has no shared state—for example after executing a move operation—, get_future() leads to IsoStdFutureErrcNoStateViolation [SWS_CORE_00344]. In this case, the methods set_value, SetError, and SetResult trigger the violation PromiseNoSharedStateToSetViolation ([SWS_CORE_00345], [SWS_CORE_00353], [SWS_CORE_00355]).
  • Already satisfied state: If the shared state has already been populated with a value, error, or result, each renewed call to set_value ([SWS_CORE_00345], [SWS_CORE_00346]), SetError ([SWS_CORE_00353], [SWS_CORE_00354]), or SetResult ([SWS_CORE_00355], [SWS_CORE_00356]) leads to the violation IsoStdFutureErrcPromiseAlreadySatisfiedViolation.
  • Exception safety: The methods set_value, SetError, and SetResult are conditionally exception safe (conditionally exception safe). They do not throw exceptions provided that the constructors of the types T and E are declared as nothrow ([SWS_CORE_00345], [SWS_CORE_00353], [SWS_CORE_00355]).

Interpretation: Abandoning the shared state upon destruction of the instance without prior value assignment ([SWS_CORE_00349]) is likely to result, analogously to the standard C++ behavior of std::promise, in an associated Future registering a corresponding error event upon an attempted read. Question Q-fd013bb17a591af9 (open)

This guide is based exclusively on the specification requirements of AUTOSAR Adaptive (Release R25-11).

Member map

Constructors and destructor

2

Operators

1

Class diagram

Hohle Dreieckspfeile = Vererbung (zeigt zur Basisklasse); Klicken öffnet die jeweilige Klassenseite.

G nara__core__Promise131 Promise + Promise() + operator=() + ~Promise() + SetError() + SetResult() + get_future() + set_value() + swap()

Detail view

Select an entry in the outline.

Constructors and destructor

Promise function 3

Default constructor This function shall behave the same as the corresponding std::promise function. ≙ std::promise

Overloads Promise 3
Promise () noexcept; SWS_CORE_00341
Promise (Promise &&other) noexcept; SWS_CORE_00342
Promise (const Promise &)=delete; SWS_CORE_00350
~Promise function

Destructor for Promise objects Abandons any shared state.

~Promise () noexcept;

Methods

get_future function

Return an associated Future with the same shared state as *this The returned Future is set as soon as this Promise receives the result, value, or an error. This fuction must only be called once as it is not allowed to have multiple Futures per Promise.

Future< T, E > get_future () noexcept;
set_value function 2

Copy a value into the shared state and make the shared state ready.

Overloads set_value 2
void set_value (const T &value) noexcept(std::is_nothrow_copy_ constructible< T >::value); SWS_CORE_00345
void set_value (T &&value) noexcept(std::is_nothrow_move_ constructible< T >::value); SWS_CORE_00346
SetError function 2

Move an error into the shared state and make the shared state ready.

Overloads SetError 2
void SetError (E &&error) noexcept(std::is_nothrow_move_constructible< E >::value); SWS_CORE_00353
void SetError (const E &error) noexcept(std::is_nothrow_copy_ constructible< E >::value); SWS_CORE_00354
SetResult function 2

Copy a Result into the shared state and make the shared state ready.

Overloads SetResult 2
void SetResult (const Result< T, E > &result) noexcept(std::is_ nothrow_copy_constructible< T >::value &&std::is_nothrow_copy_ constructible< E >::value); SWS_CORE_00355
void SetResult (Result< T, E > &&result) noexcept(std::is_nothrow_ move_constructible< T >::value &&std::is_nothrow_move_constructible< E >::value); SWS_CORE_00356
swap function

Swap the contents of this instance with another one’s. This function shall behave the same as the corresponding std::promise function. ≙ std::promise

void swap (Promise &other) noexcept;

Operators

operator= function 2

Move assignment Abandons any shared state and then as if Promise(std::move(other)).swap(*this). ≙ std::move

Overloads = 2
Promise & operator= (Promise &&other) noexcept; SWS_CORE_00343
Promise & operator= (const Promise &)=delete; SWS_CORE_00351

Method documentation

function Promise [SWS_CORE_00341] Upstream: RS_AP_00130

Promise () noexcept;

Default constructor This function shall behave the same as the corresponding std::promise function.

Header-Datei#include "ara/core/future.h"
Scopeclass ara::core::Promise
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_CORE_00341
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_00341@rel:R25-11#0986205c
Content hash
0986205c
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_00341
Status: valid/unmigrated Version: rel:R25-11#ad8790dc Versionshistorie & Revisions (1 transition, 8 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_CORE_00341@rel:R25-11#ad8790dc
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#0986205c2026-09-30
  • R19-11rel:R19-11#becb2d122026-10-14
  • R20-11rel:R20-11#530577522026-10-14
  • R21-11rel:R21-11#9a9686d12026-10-14
  • R22-11rel:R22-11#eece9f122026-10-14
  • R23-11rel:R23-11#68a9155a2026-10-14
  • R24-11rel:R24-11#7a7170b92026-10-14
  • R25-11rel:R25-11#ad8790dc2026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

function Promise [SWS_CORE_00342] Upstream: RS_AP_00130

Promise (Promise &&other) noexcept;

Move constructor This function shall behave the same as the corresponding std::promise function.

Header-Datei#include "ara/core/future.h"
Scopeclass ara::core::Promise
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Parameter (in)

ParameterBeschreibung
otherthe other instance

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_CORE_00342
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_00342@rel:R25-11#48f770fd
Content hash
48f770fd
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_00342
Status: valid/unmigrated Version: rel:R25-11#b87869d0 Versionshistorie & Revisions (1 transition, 8 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_CORE_00342@rel:R25-11#b87869d0
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#48f770fd2026-09-30
  • R19-11rel:R19-11#47337e4f2026-10-14
  • R20-11rel:R20-11#7c95444f2026-10-14
  • R21-11rel:R21-11#e06b8a592026-10-14
  • R22-11rel:R22-11#d1f4110b2026-10-14
  • R23-11rel:R23-11#6d1133f82026-10-14
  • R24-11rel:R24-11#afc2a3c62026-10-14
  • R25-11rel:R25-11#b87869d02026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

function Promise [SWS_CORE_00350] Upstream: RS_AP_00130

Promise (const Promise &)=delete;

Copy constructor shall be disabled.

Header-Datei#include "ara/core/future.h"
Scopeclass ara::core::Promise

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_CORE_00350
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_00350@rel:R25-11#3a63a36d
Content hash
3a63a36d
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_00350
Status: valid/unmigrated Version: rel:R25-11#d2c392a4 Versionshistorie & Revisions (1 transition, 8 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_CORE_00350@rel:R25-11#d2c392a4
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#3a63a36d2026-09-30
  • R19-11rel:R19-11#e6d29cc42026-10-14
  • R20-11rel:R20-11#bd55f3592026-10-14
  • R21-11rel:R21-11#bd55f3592026-10-14
  • R22-11rel:R22-11#9f08870d2026-10-14
  • R23-11rel:R23-11#cd2c53b02026-10-14
  • R24-11rel:R24-11#d2c392a42026-10-14
  • R25-11rel:R25-11#d2c392a42026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

function SetError [SWS_CORE_00353] Upstream: RS_AP_00130

void SetError (E &&error) noexcept(std::is_nothrow_move_constructible< E >::value);

Move an error into the shared state and make the shared state ready.

Header-Datei#include "ara/core/future.h"
Scopeclass ara::core::Promise
Exception-Sicherheitconditionally exception safe
Thread-Sicherheitthread-safe
Verletzungen (Violations)IsoStdFutureEr- If the shared state already has a stored value or error. rcPromiseAl- readySatisfiedVio- lation PromiseNoShared- If *this has no shared state. StateToSetViola- tion

Parameter (in)

ParameterBeschreibung
errorthe error to store

Rückgabewert

TypBeschreibung
None

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_CORE_00353
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_00353@rel:R25-11#4d6aa634
Content hash
4d6aa634
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_00353
Status: valid/unmigrated Version: rel:R25-11#bed318c8 Versionshistorie & Revisions (1 transition, 8 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_CORE_00353@rel:R25-11#bed318c8
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#4d6aa6342026-09-30
  • R19-11rel:R19-11#17d203aa2026-10-14
  • R20-11rel:R20-11#483431492026-10-14
  • R21-11rel:R21-11#d246c4f32026-10-14
  • R22-11rel:R22-11#4e87e6272026-10-14
  • R23-11rel:R23-11#8177c2a32026-10-14
  • R24-11rel:R24-11#3effc9532026-10-14
  • R25-11rel:R25-11#bed318c82026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

function SetError [SWS_CORE_00354] Upstream: RS_AP_00130

void SetError (const E &error) noexcept(std::is_nothrow_copy_ constructible< E >::value);

Copy an error into the shared state and make the shared state ready.

Header-Datei#include "ara/core/future.h"
Scopeclass ara::core::Promise
Exception-Sicherheitconditionally exception safe
Thread-Sicherheitthread-safe
Verletzungen (Violations)IsoStdFutureEr- If the shared state already has a stored value or error. rcPromiseAl- readySatisfiedVio- lation PromiseNoShared- If *this has no shared state. StateToSetViola- tion

Parameter (in)

ParameterBeschreibung
errorthe error to store

Rückgabewert

TypBeschreibung
None

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_CORE_00354
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_00354@rel:R25-11#4b69b7b2
Content hash
4b69b7b2
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_00354
Status: valid/unmigrated Version: rel:R25-11#865b7aca Versionshistorie & Revisions (1 transition, 8 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_CORE_00354@rel:R25-11#865b7aca
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#4b69b7b22026-09-30
  • R19-11rel:R19-11#08af04582026-10-14
  • R20-11rel:R20-11#66d90e1c2026-10-14
  • R21-11rel:R21-11#ef5dc7082026-10-14
  • R22-11rel:R22-11#826b4e3c2026-10-14
  • R23-11rel:R23-11#3767dc562026-10-14
  • R24-11rel:R24-11#a3d044712026-10-14
  • R25-11rel:R25-11#865b7aca2026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

function SetResult [SWS_CORE_00355] Upstream: RS_AP_00130

void SetResult (const Result< T, E > &result) noexcept(std::is_ nothrow_copy_constructible< T >::value &&std::is_nothrow_copy_ constructible< E >::value);

Copy a Result into the shared state and make the shared state ready.

Header-Datei#include "ara/core/future.h"
Scopeclass ara::core::Promise
Exception-Sicherheitconditionally exception safe
Thread-Sicherheitthread-safe
Verletzungen (Violations)IsoStdFutureEr- If the shared state already has a stored value or error. rcPromiseAl- readySatisfiedVio- lation PromiseNoShared- If *this has no shared state. StateToSetViola- tion

Parameter (in)

ParameterBeschreibung
resultthe result to store

Rückgabewert

TypBeschreibung
None

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_CORE_00355
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_00355@rel:R25-11#1c0f0839
Content hash
1c0f0839
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_00355
Status: valid/unmigrated Version: rel:R25-11#eb823c26 Versionshistorie & Revisions (1 transition, 7 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_CORE_00355@rel:R25-11#eb823c26
Point-in-Time History:
Recorded Revisions (7):
  • R25-11rel:R25-11#1c0f08392026-09-30
  • R20-11rel:R20-11#4c6f52702026-10-14
  • R21-11rel:R21-11#4c6f52702026-10-14
  • R22-11rel:R22-11#58e0871d2026-10-14
  • R23-11rel:R23-11#0c1607a72026-10-14
  • R24-11rel:R24-11#0b83bc582026-10-14
  • R25-11rel:R25-11#eb823c262026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

function SetResult [SWS_CORE_00356] Upstream: RS_AP_00130

void SetResult (Result< T, E > &&result) noexcept(std::is_nothrow_ move_constructible< T >::value &&std::is_nothrow_move_constructible< E >::value);

Move a Result into the shared state and make the shared state ready.

Header-Datei#include "ara/core/future.h"
Scopeclass ara::core::Promise
Exception-Sicherheitconditionally exception safe
Thread-Sicherheitthread-safe
Verletzungen (Violations)IsoStdFutureEr- If the shared state already has a stored value or error. rcPromiseAl- readySatisfiedVio- lation PromiseNoShared- If *this has no shared state. StateToSetViola- tion

Parameter (in)

ParameterBeschreibung
resultthe result to store

Rückgabewert

TypBeschreibung
None

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_CORE_00356
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_00356@rel:R25-11#cae957a9
Content hash
cae957a9
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_00356
Status: valid/unmigrated Version: rel:R25-11#445f8c93 Versionshistorie & Revisions (1 transition, 7 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_CORE_00356@rel:R25-11#445f8c93
Point-in-Time History:
Recorded Revisions (7):
  • R25-11rel:R25-11#cae957a92026-09-30
  • R20-11rel:R20-11#558a00112026-10-14
  • R21-11rel:R21-11#558a00112026-10-14
  • R22-11rel:R22-11#dbcdc7d52026-10-14
  • R23-11rel:R23-11#9e711ec62026-10-14
  • R24-11rel:R24-11#0194828a2026-10-14
  • R25-11rel:R25-11#445f8c932026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

function get_future [SWS_CORE_00344] Upstream: RS_AP_00130

Future< T, E > get_future () noexcept;

Return an associated Future with the same shared state as *this The returned Future is set as soon as this Promise receives the result, value, or an error. This fuction must only be called once as it is not allowed to have multiple Futures per Promise.

Header-Datei#include "ara/core/future.h"
Scopeclass ara::core::Promise
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe
Verletzungen (Violations)IsoStdFutureErrc- If the function is called more than once on the same shared FutureAlreadyRe- state. trievedViolation IsoStdFutureErrc- If *this has no shared state. NoStateViolation

Rückgabewert

TypBeschreibung
Future< T, E >a Future with the same shared state as *this

Fehler

FehlercodeBeschreibung
This function does not specify any standardized errors.

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_CORE_00344
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_00344@rel:R25-11#f0a82951
Content hash
f0a82951
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_00344
Status: valid/unmigrated Version: rel:R25-11#9636ce04 Versionshistorie & Revisions (1 transition, 8 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_CORE_00344@rel:R25-11#9636ce04
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#f0a829512026-09-30
  • R19-11rel:R19-11#e89e1ade2026-10-14
  • R20-11rel:R20-11#4b3f3d5b2026-10-14
  • R21-11rel:R21-11#dc390e3a2026-10-14
  • R22-11rel:R22-11#d25873012026-10-14
  • R23-11rel:R23-11#616361012026-10-14
  • R24-11rel:R24-11#59190fca2026-10-14
  • R25-11rel:R25-11#9636ce042026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

function operator= [SWS_CORE_00343] Upstream: RS_AP_00130

Promise & operator= (Promise &&other) noexcept;

Move assignment Abandons any shared state and then as if Promise(std::move(other)).swap(*this).

Header-Datei#include "ara/core/future.h"
Scopeclass ara::core::Promise
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Parameter (in)

ParameterBeschreibung
otherthe other instance

Rückgabewert

TypBeschreibung
Promise &*this

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_CORE_00343
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_00343@rel:R25-11#2c46856d
Content hash
2c46856d
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_00343
Status: valid/unmigrated Version: rel:R25-11#65fdcb27 Versionshistorie & Revisions (1 transition, 8 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_CORE_00343@rel:R25-11#65fdcb27
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#2c46856d2026-09-30
  • R19-11rel:R19-11#dc654ee02026-10-14
  • R20-11rel:R20-11#f1806e3b2026-10-14
  • R21-11rel:R21-11#34acef442026-10-14
  • R22-11rel:R22-11#407a30d82026-10-14
  • R23-11rel:R23-11#10c10b722026-10-14
  • R24-11rel:R24-11#15d095072026-10-14
  • R25-11rel:R25-11#65fdcb272026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

function operator= [SWS_CORE_00351] Upstream: RS_AP_00130

Promise & operator= (const Promise &)=delete;

Copy assignment operator shall be disabled.

Header-Datei#include "ara/core/future.h"
Scopeclass ara::core::Promise

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_CORE_00351
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_00351@rel:R25-11#9b9068f4
Content hash
9b9068f4
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_00351
Status: valid/unmigrated Version: rel:R25-11#c5df3082 Versionshistorie & Revisions (1 transition, 8 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_CORE_00351@rel:R25-11#c5df3082
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#9b9068f42026-09-30
  • R19-11rel:R19-11#6c16087a2026-10-14
  • R20-11rel:R20-11#02e45f892026-10-14
  • R21-11rel:R21-11#02e45f892026-10-14
  • R22-11rel:R22-11#8a967fd52026-10-14
  • R23-11rel:R23-11#b412d2772026-10-14
  • R24-11rel:R24-11#c5df30822026-10-14
  • R25-11rel:R25-11#c5df30822026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

function set_value [SWS_CORE_00345] Upstream: RS_AP_00130

void set_value (const T &value) noexcept(std::is_nothrow_copy_ constructible< T >::value);

Copy a value into the shared state and make the shared state ready.

Header-Datei#include "ara/core/future.h"
Scopeclass ara::core::Promise
Exception-Sicherheitconditionally exception safe
Thread-Sicherheitthread-safe
Verletzungen (Violations)IsoStdFutureEr- If the shared state already has a stored value or error. rcPromiseAl- readySatisfiedVio- lation PromiseNoShared- If *this has no shared state. StateToSetViola- tion

Parameter (in)

ParameterBeschreibung
valuethe value to store

Rückgabewert

TypBeschreibung
None

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_CORE_00345
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_00345@rel:R25-11#f9783a29
Content hash
f9783a29
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_00345
Status: valid/unmigrated Version: rel:R25-11#6b282783 Versionshistorie & Revisions (1 transition, 8 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_CORE_00345@rel:R25-11#6b282783
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#f9783a292026-09-30
  • R19-11rel:R19-11#2c0ddcac2026-10-14
  • R20-11rel:R20-11#1095e01c2026-10-14
  • R21-11rel:R21-11#1095e01c2026-10-14
  • R22-11rel:R22-11#94a66b6c2026-10-14
  • R23-11rel:R23-11#49bb9caf2026-10-14
  • R24-11rel:R24-11#3a34547c2026-10-14
  • R25-11rel:R25-11#6b2827832026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

function set_value [SWS_CORE_00346] Upstream: RS_AP_00130

void set_value (T &&value) noexcept(std::is_nothrow_move_ constructible< T >::value);

Move a value into the shared state and make the shared state ready.

Header-Datei#include "ara/core/future.h"
Scopeclass ara::core::Promise
Exception-Sicherheitconditionally exception safe
Thread-Sicherheitthread-safe
Verletzungen (Violations)IsoStdFutureEr- If the shared state already has a stored value or error. rcPromiseAl- readySatisfiedVio- lation PromiseNoShared- If *this has no shared state. StateToSetViola- tion

Parameter (in)

ParameterBeschreibung
valuethe value to store

Rückgabewert

TypBeschreibung
None

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_CORE_00346
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_00346@rel:R25-11#8b29c204
Content hash
8b29c204
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_00346
Status: valid/unmigrated Version: rel:R25-11#56056ba3 Versionshistorie & Revisions (1 transition, 8 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_CORE_00346@rel:R25-11#56056ba3
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#8b29c2042026-09-30
  • R19-11rel:R19-11#d1c271cd2026-10-14
  • R20-11rel:R20-11#2c1231622026-10-14
  • R21-11rel:R21-11#2c1231622026-10-14
  • R22-11rel:R22-11#6be6444f2026-10-14
  • R23-11rel:R23-11#7f5cd43e2026-10-14
  • R24-11rel:R24-11#cc28bc5f2026-10-14
  • R25-11rel:R25-11#56056ba32026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

function swap [SWS_CORE_00352] Upstream: RS_AP_00130

void swap (Promise &other) noexcept;

Swap the contents of this instance with another one’s. This function shall behave the same as the corresponding std::promise function.

Header-Datei#include "ara/core/future.h"
Scopeclass ara::core::Promise
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Parameter (in/out)

ParameterBeschreibung
otherthe other instance

Rückgabewert

TypBeschreibung
None

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_CORE_00352
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_00352@rel:R25-11#f1518486
Content hash
f1518486
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_00352
Status: valid/unmigrated Version: rel:R25-11#34c2a151 Versionshistorie & Revisions (1 transition, 8 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_CORE_00352@rel:R25-11#34c2a151
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#f15184862026-09-30
  • R19-11rel:R19-11#04fbb8542026-10-14
  • R20-11rel:R20-11#b552e9282026-10-14
  • R21-11rel:R21-11#b552e9282026-10-14
  • R22-11rel:R22-11#1e062be72026-10-14
  • R23-11rel:R23-11#9c97ab662026-10-14
  • R24-11rel:R24-11#4aff210a2026-10-14
  • R25-11rel:R25-11#34c2a1512026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

function ~Promise [SWS_CORE_00349] Upstream: RS_AP_00130

~Promise () noexcept;

Destructor for Promise objects Abandons any shared state.

Header-Datei#include "ara/core/future.h"
Scopeclass ara::core::Promise
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_CORE_00349
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_00349@rel:R25-11#17040834
Content hash
17040834
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_00349
Status: valid/unmigrated Version: rel:R25-11#d3ab1bdc Versionshistorie & Revisions (1 transition, 8 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_CORE_00349@rel:R25-11#d3ab1bdc
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#170408342026-09-30
  • R19-11rel:R19-11#d48e92272026-10-14
  • R20-11rel:R20-11#f8e702f92026-10-14
  • R21-11rel:R21-11#536b31e32026-10-14
  • R22-11rel:R22-11#0e8726472026-10-14
  • R23-11rel:R23-11#9b91cb7e2026-10-14
  • R24-11rel:R24-11#cea546db2026-10-14
  • R25-11rel:R25-11#d3ab1bdc2026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill