DEENESPTFRRUARHIKOZHNL

classe ara::core::Variant

[SWS_CORE_01601] Upstream: RS_AP_00130

template <typename...                Types> class Variant {...};

Implementation of std::variant type from [basic.string]

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

Guide utilisateurGÉNÉRÉ PAR IA

Stocke de manière sûre du point de vue des types exactement une valeur issue d'un ensemble de types défini avec sécurité conditionnelle vis-à-vis des exceptions.
GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : 223b5b60b80c Provenance Questions ouvertes (2)
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

Stocke de manière sûre du point de vue des types exactement une valeur issue d'un ensemble de types défini avec sécurité conditionnelle vis-à-vis des exceptions.

La classe modèle ara::core::Variant sert d'union sûre vis-à-vis des types pour le stockage et la gestion d'exactement une valeur issue d'un ensemble de types prédéfini [SWS_CORE_01649]. Elle prend en charge des mécanismes flexibles de construction, d'assignation et d'emplace, et permet de déterminer l'alternative active via index() [SWS_CORE_01665]. La particularité principale par rapport au standard réside dans les spécifications noexcept conditionnelles modifiées de l'ensemble des opérations modificatrices ainsi que dans la protection contre l'état valueless_by_exception() [SWS_CORE_01666].

Contexte

La classe modèle ara::core::Variant constitue une union sûre vis-à-vis des types pour l'AUTOSAR Adaptive Platform, incluse via l'en-tête ara/core/variant.h. Elle encapsule la gestion d'exactement une valeur issue d'une liste de types définie à la compilation (template <typename... Types> class Variant). La définition s'inspire fondamentalement du comportement de std::variant issu du standard C++ [variant], mais présente des écarts spécifiques à AUTOSAR en ce qui concerne la spécification des exceptions. La description de la classe fait référence à [basic.string] dans le jeu de métadonnées ; interprétation : il devrait s'agir d'une incohérence rédactionnelle, étant donné que toutes les exigences font référence de manière cohérente à la section standard [variant]. Question Q-809de1af74fcb689 (ouverte)

Cycle de vie

Une instance de ara::core::Variant passe par des phases de cycle de vie déterministes, de l'initialisation à la destruction en passant par les changements de valeur. La création s'effectue soit par le constructeur par défaut sans argument [SWS_CORE_01649], qui initialise la première alternative, soit par des constructeurs de copie et de déplacement [SWS_CORE_01650], [SWS_CORE_01651], soit par passage direct de valeur [SWS_CORE_01652]. De plus, des surcharges pour la construction in situ au moyen de in_place_type_t [SWS_CORE_01653], [SWS_CORE_01654] ainsi que de in_place_index_t [SWS_CORE_01655], [SWS_CORE_01656] sont disponibles, y compris en combinaison avec des listes d'initialisation.

À l'état standard, l'objet contient toujours une alternative valide dont l'indice basé sur zéro peut être déterminé avec la méthode index() [SWS_CORE_01665]. Si un changement de valeur échoue pendant une construction ou une assignation en raison de la levée d'une exception, l'instance passe à l'état valueless_by_exception() [SWS_CORE_01666]. L'objet demeure dans cet état jusqu'à ce qu'une réinitialisation réussie occupe à nouveau une alternative valide. Le destructeur détruit convenablement l'objet actuellement contenu et est déclaré conditionnellement sûr du point de vue des exceptions [SWS_CORE_01657].

variant_lifecycle Uninitialisiert Uninitialisiert Gueltig Gueltig Uninitialisiert->Gueltig Konstruktion Gueltig->Gueltig operator= / emplace() ValuelessByException ValuelessByException Gueltig->ValuelessByException Fehlschlag Zuweisung / emplace Zerstoert Zerstoert Gueltig->Zerstoert ~Variant() ValuelessByException->Gueltig Erfolgreiches emplace() ValuelessByException->Zerstoert ~Variant()

Diagramme d'états : transitions d'état d'une instance de Variant entre la validité attribuée à un type et l'état d'exception. Sources : [SWS_CORE_01649], [SWS_CORE_01657], [SWS_CORE_01661], [SWS_CORE_01665], [SWS_CORE_01666]

Parcours d'utilisation

Un flux d'utilisation typique comprend l'instanciation, l'assignation ou le remplacement du contenu, l'interrogation de l'état et l'échange de valeurs :

  • Initialisation : création d'une instance via l'un des constructeurs, par exemple par passage direct de valeur [SWS_CORE_01652] ou de manière explicitement liée au type au moyen de in_place_type_t [SWS_CORE_01653].
  • Mise à jour et réaffectation de valeur : assignation d'une nouvelle valeur via l'opérateur d'assignation par copie [SWS_CORE_01658], l'opérateur d'assignation par déplacement [SWS_CORE_01659] ou l'assignation de valeur générique [SWS_CORE_01660]. En alternative, la valeur peut être reconstruite directement in situ via emplace par type [SWS_CORE_01661], [SWS_CORE_01662] ou par indice [SWS_CORE_01663], [SWS_CORE_01664].
  • Contrôle de l'état : interrogation de l'indice de type actif via index() [SWS_CORE_01665] ainsi que protection contre les erreurs précédentes via valueless_by_exception() [SWS_CORE_01666].
  • Échange d'objets : échange efficace de deux instances de Variant via la fonction membre swap() [SWS_CORE_01667].

Le jeu d'enregistrements de spécification présent ne comportant que des fonctions membres, les opérations de lecture directe telles qu'un accès aux valeurs font défaut ; les fonctions d'accès et de visite (de façon analogue à std::get ou std::visit) sont vraisemblablement fournies sous forme de fonctions utilitaires libres dans l'espace de noms ara::core. Question Q-75847ac18088da57 (ouverte)

Scénarios d'erreur

Au cœur du traitement des erreurs se trouve la propriété de sécurité conditionnelle vis-à-vis des exceptions (conditionally exception safe). Alors que la bibliothèque standard prévoit des règles noexcept fixes pour std::variant, AUTOSAR s'en écarte délibérément : tous les constructeurs [SWS_CORE_01650], [SWS_CORE_01653], les opérateurs d'assignation [SWS_CORE_01658], les opérations emplace [SWS_CORE_01661], [SWS_CORE_01663], la fonction d'échange swap() [SWS_CORE_01667] ainsi que le destructeur [SWS_CORE_01657] sont conditionnellement noexcept. Leur garantie d'exception dépend directement des propriétés noexcept des constructeurs de types sous-jacents.

Si la construction d'une nouvelle valeur lève une exception lors d'une assignation ou d'un appel de emplace, le variant peut basculer dans un état intermédiaire invalide. Celui-ci est signalé via valueless_by_exception() [SWS_CORE_01666]. Seules les deux fonctions d'interrogation index() [SWS_CORE_01665] et valueless_by_exception() [SWS_CORE_01666] offrent une garantie noexcept sans restriction et sont totalement sûres vis-à-vis des exceptions.

Ce guide repose sur la spécification AUTOSAR pour l'Adaptive Platform (Release R25-11, module core) et a été préparé par un assistant de curation IA.

Carte des membres

Constructeurs et destructeur

2

Opérateurs

1

Diagramme de classes

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

G nara__core__Variant465 Variant + Variant() + operator=() + ~Variant() + emplace() + swap() + index() + valueless_by_exception()

Vue détaillée

Sélectionnez une entrée dans le plan.

Constructeurs et destructeur

Variant fonction 8

≙ [variant]

Surcharges Variant 8
constexpr Variant () noexcept({<cond-noexcept-1>}); SWS_CORE_01649
Variant (const Variant &other) noexcept({<cond-noexcept-2>}); SWS_CORE_01650
Variant (Variant &&other) noexcept({<cond-noexcept-3>}); SWS_CORE_01651
template <typename T> constexpr Variant (T &&value) noexcept({<cond-noexcept-4>}); SWS_CORE_01652
template <typename T, typename... Args> explicit constexpr Variant (in_place_type_t< T > tag, Args &&... args) noexcept(std::is_nothrow_constructible< T, Args... >::value); SWS_CORE_01653
template <typename T, typename U, typename... Args> explicit constexpr Variant (in_place_type_t< T > tag, std::initializer_list< U > il, Args &&... args) noexcept(std::is_ nothrow_constructible< T, std::initializer_list< U > &, Args &&... >::value); SWS_CORE_01654
template <std::size_t I, typename... Args> explicit constexpr Variant (in_place_index_t< I > tag, Args &&... args) noexcept({<cond-noexcept-5>}); SWS_CORE_01655
template <std::size_t I, typename U, typename... Args> explicit constexpr Variant (in_place_index_t< I > tag, std::initializer_list< U > il, Args &&... args) noexcept( {<cond-noexcept-6>}); SWS_CORE_01656
~Variant fonction

except for the following deviations: 1. Function is conditionally noexcept ≙ [variant]

~Variant () noexcept({<cond-noexcept-7>});

Méthodes

emplace fonction 4

except for the following deviations: 1. Function is conditionally noexcept ≙ [variant]

Surcharges emplace 4
template <typename T, typename... Args> T & emplace (Args &&... args) noexcept(std::is_nothrow_constructible< T, Args... >::value); SWS_CORE_01661
template <typename T, typename U, typename... Args> T & emplace (std::initializer_list< U > il, Args &&... args) noexcept(std::is_nothrow_constructible< T, std::initializer_list< U > &, Args &&... >::value); SWS_CORE_01662
template <std::size_t I, typename... Args> variant_alternative_t< I, Variant< Types... > > & emplace (Args &&... args) noexcept({<cond-noexcept-11>}); SWS_CORE_01663
template <std::size_t I, typename U, typename... Args> variant_alternative_t< I, Variant< Types... > > & emplace (std::initializer_list< U > il, Args &&... args) noexcept( {<cond-noexcept-12>}); SWS_CORE_01664
index fonction

≙ [variant]

constexpr std::size_t index () const noexcept;
swap fonction

except for the following deviations: 1. Conditions for the conditional exception safety are modified ≙ [variant]

void swap (Variant &other) noexcept({<cond-noexcept-13>});

≙ [variant]

constexpr bool valueless_by_exception () const noexcept;

Opérateurs

operator= fonction 3

except for the following deviations: 1. Function is conditionally noexcept ≙ [variant]

Surcharges = 3
constexpr Variant & operator= (const Variant &other) noexcept( {<cond-noexcept-8>}); SWS_CORE_01658
constexpr Variant & operator= (Variant &&other) noexcept( {<cond-noexcept-9>}); SWS_CORE_01659
template <typename T> Variant & operator= (T &&value) noexcept({<cond-noexcept-10>}); SWS_CORE_01660

Documentation des méthodes

fonction Variant [SWS_CORE_01649]

constexpr Variant () noexcept({<cond-noexcept-1>});

As per corresponding usage in [variant]

Header-Datei#include "ara/core/variant.h"
Scopeclass ara::core::Variant
Exception-Sicherheitconditionally exception safe

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

Record
AUTOSAR/AP/record/SWS_CORE_01649
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_01649@rel:R25-11#a2894b27
Content hash
a2894b27
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_01649
Status: valid/unmigrated Version: rel:R25-11#db2002ad Versionshistorie & Revisions (1 transition, 3 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_01649@rel:R25-11#db2002ad
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#300cfb642026-09-30
  • R24-11rel:R24-11#93873aed2026-10-14
  • R25-11rel:R25-11#db2002ad2026-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

fonction Variant [SWS_CORE_01650]

Variant (const Variant &other) noexcept({<cond-noexcept-2>});

As per corresponding usage in [variant] except for the following deviations: 1. Function is conditionally noexcept

Header-Datei#include "ara/core/variant.h"
Scopeclass ara::core::Variant
Exception-Sicherheitconditionally exception safe

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

Record
AUTOSAR/AP/record/SWS_CORE_01650
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_01650@rel:R25-11#befe2231
Content hash
befe2231
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_01650
Status: valid/unmigrated Version: rel:R25-11#b0ca00aa Versionshistorie & Revisions (1 transition, 3 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_01650@rel:R25-11#b0ca00aa
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#d7b9f4212026-09-30
  • R24-11rel:R24-11#8ec330a02026-10-14
  • R25-11rel:R25-11#b0ca00aa2026-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

fonction Variant [SWS_CORE_01651]

Variant (Variant &&other) noexcept({<cond-noexcept-3>});

As per corresponding usage in [variant] Move constructor

Header-Datei#include "ara/core/variant.h"
Scopeclass ara::core::Variant
Exception-Sicherheitconditionally exception safe

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

Record
AUTOSAR/AP/record/SWS_CORE_01651
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_01651@rel:R25-11#e5665181
Content hash
e5665181
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_01651
Status: valid/unmigrated Version: rel:R25-11#2e696abb Versionshistorie & Revisions (1 transition, 3 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_01651@rel:R25-11#2e696abb
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#6c1826782026-09-30
  • R24-11rel:R24-11#7374aec42026-10-14
  • R25-11rel:R25-11#2e696abb2026-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

fonction Variant [SWS_CORE_01652]

template <typename T> constexpr Variant (T &&value) noexcept({<cond-noexcept-4>});

As per corresponding usage in [variant]

Header-Datei#include "ara/core/variant.h"
Scopeclass ara::core::Variant
Exception-Sicherheitconditionally exception safe

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

Record
AUTOSAR/AP/record/SWS_CORE_01652
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_01652@rel:R25-11#fcffeedf
Content hash
fcffeedf
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_01652
Status: valid/unmigrated Version: rel:R25-11#e2bf0fdc Versionshistorie & Revisions (1 transition, 3 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_01652@rel:R25-11#e2bf0fdc
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#8e7ec9d82026-09-30
  • R24-11rel:R24-11#db8b85bc2026-10-14
  • R25-11rel:R25-11#e2bf0fdc2026-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

fonction Variant [SWS_CORE_01653]

template <typename T, typename... Args> explicit constexpr Variant (in_place_type_t< T > tag, Args &&... args) noexcept(std::is_nothrow_constructible< T, Args... >::value);

As per corresponding usage in [variant] except for the following deviations: 1. Function is conditionally noexcept

Header-Datei#include "ara/core/variant.h"
Scopeclass ara::core::Variant
Exception-Sicherheitconditionally exception safe

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

Record
AUTOSAR/AP/record/SWS_CORE_01653
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_01653@rel:R25-11#34604770
Content hash
34604770
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_01653
Status: valid/unmigrated Version: rel:R25-11#b0122423 Versionshistorie & Revisions (1 transition, 3 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_01653@rel:R25-11#b0122423
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#015da83e2026-09-30
  • R24-11rel:R24-11#cb5845952026-10-14
  • R25-11rel:R25-11#b01224232026-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

fonction Variant [SWS_CORE_01654]

template <typename T, typename U, typename... Args> explicit constexpr Variant (in_place_type_t< T > tag, std::initializer_list< U > il, Args &&... args) noexcept(std::is_ nothrow_constructible< T, std::initializer_list< U > &, Args &&... >::value);

As per corresponding usage in [variant] except for the following deviations: 1. Function is conditionally noexcept

Header-Datei#include "ara/core/variant.h"
Scopeclass ara::core::Variant
Exception-Sicherheitconditionally exception safe

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

Record
AUTOSAR/AP/record/SWS_CORE_01654
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_01654@rel:R25-11#bbc563d7
Content hash
bbc563d7
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_01654
Status: valid/unmigrated Version: rel:R25-11#a3d5e977 Versionshistorie & Revisions (1 transition, 3 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_01654@rel:R25-11#a3d5e977
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#dbc17b3a2026-09-30
  • R24-11rel:R24-11#96abcd352026-10-14
  • R25-11rel:R25-11#a3d5e9772026-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

fonction Variant [SWS_CORE_01655]

template <std::size_t I, typename... Args> explicit constexpr Variant (in_place_index_t< I > tag, Args &&... args) noexcept({<cond-noexcept-5>});

As per corresponding usage in [variant] except for the following deviations: 1. Function is conditionally noexcept

Header-Datei#include "ara/core/variant.h"
Scopeclass ara::core::Variant
Exception-Sicherheitconditionally exception safe

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

Record
AUTOSAR/AP/record/SWS_CORE_01655
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_01655@rel:R25-11#43d733a6
Content hash
43d733a6
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_01655
Status: valid/unmigrated Version: rel:R25-11#59578a03 Versionshistorie & Revisions (1 transition, 3 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_01655@rel:R25-11#59578a03
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#05d41ae02026-09-30
  • R24-11rel:R24-11#4731b7332026-10-14
  • R25-11rel:R25-11#59578a032026-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

fonction Variant [SWS_CORE_01656]

template <std::size_t I, typename U, typename... Args> explicit constexpr Variant (in_place_index_t< I > tag, std::initializer_list< U > il, Args &&... args) noexcept( {<cond-noexcept-6>});

As per corresponding usage in [variant] except for the following deviations: 1. Function is conditionally noexcept

Header-Datei#include "ara/core/variant.h"
Scopeclass ara::core::Variant
Exception-Sicherheitconditionally exception safe

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

Record
AUTOSAR/AP/record/SWS_CORE_01656
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_01656@rel:R25-11#01f5982d
Content hash
01f5982d
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_01656
Status: valid/unmigrated Version: rel:R25-11#2e213ddd Versionshistorie & Revisions (1 transition, 3 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_01656@rel:R25-11#2e213ddd
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#f254bcf02026-09-30
  • R24-11rel:R24-11#bff0ca532026-10-14
  • R25-11rel:R25-11#2e213ddd2026-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

fonction emplace [SWS_CORE_01661]

template <typename T, typename... Args> T & emplace (Args &&... args) noexcept(std::is_nothrow_constructible< T, Args... >::value);

As per corresponding usage in [variant] except for the following deviations: 1. Function is conditionally noexcept

GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : 0fe1e0b61069 Provenance Questions ouvertes (1)
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

La fonction membre emplace construit une valeur alternative du type T directement dans une instance existante de ara::core::Variant [SWS_CORE_01661]. La fonction est mise à disposition via le fichier d'en-tête #include "ara/core/variant.h" et s'exécute de manière synchrone [SWS_CORE_01661]. Comme paramètres, elle prend des références de transfert universel args..., qui sont transmises au constructeur du type cible T, et renvoie une référence sur l'objet nouvellement créé [SWS_CORE_01661].

Concernant le traitement des erreurs, l'opération est déclarée comme conditionnellement sûre vis-à-vis des exceptions (« conditionally exception safe ») [SWS_CORE_01661]. Elle suit le comportement standard de variant, mais s'en écarte par une spécification conditionnelle noexcept : une exception est exclue si et seulement si std::is_nothrow_constructible<T, Args...>::value est satisfait [SWS_CORE_01661]. Aucun code d'erreur AUTOSAR spécifique ni message vers DET ou DEM n'est défini pour cette fonction de base.

Concernant la concurrence et le contexte d'appel, la spécification ne mentionne aucune garantie divergente. Interprétation : l'accès simultané en écriture de plusieurs threads à la même instance Variant via emplace ne devrait pas être thread-safe sans synchronisation externe, car AUTOSAR renvoie à la sémantique standard de variant. Question Q-4d9d118b9916a3dc (ouverte)

Dans le cadre de l'interaction au sein de ara::core::Variant, il existe d'autres surcharges pour les listes d'initialisation [SWS_CORE_01662] ainsi que les constructions in-place basées sur des index [SWS_CORE_01663], [SWS_CORE_01664]. Des opérations emplace analogues sont en outre spécifiées dans le module Core pour ara::core::Optional ([SWS_CORE_01119], [SWS_CORE_01120], [SWS_CORE_01164]) ainsi que pour des conteneurs tels que ara::core::Vector [SWS_CORE_01366] et ara::core::Map [SWS_CORE_01458].

Cette note d'utilisation a été générée automatiquement sur la base de la spécification AUTOSAR pour R25-11.

Header-Datei#include "ara/core/variant.h"
Scopeclass ara::core::Variant
Exception-Sicherheitconditionally exception safe

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

Record
AUTOSAR/AP/record/SWS_CORE_01661
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_01661@rel:R25-11#1be1c8b6
Content hash
1be1c8b6
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_01661
Status: valid/unmigrated Version: rel:R25-11#2a14eef2 Versionshistorie & Revisions (1 transition, 3 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_01661@rel:R25-11#2a14eef2
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#6250f84a2026-09-30
  • R24-11rel:R24-11#b4d067862026-10-14
  • R25-11rel:R25-11#2a14eef22026-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

fonction emplace [SWS_CORE_01662]

template <typename T, typename U, typename... Args> T & emplace (std::initializer_list< U > il, Args &&... args) noexcept(std::is_nothrow_constructible< T, std::initializer_list< U > &, Args &&... >::value);

As per corresponding usage in [variant] except for the following deviations: 1. Function is conditionally noexcept

GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : a346c9068921 Provenance Questions ouvertes (2)
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

La fonction membre emplace de ara::core::Variant issue de l’en-tête ara/core/variant.h sert à la création synchrone d’une alternative de type T directement dans la mémoire de l’instance existante [SWS_CORE_01662]. À cette occasion, une std::initializer_list<U> ainsi que des arguments transférés Args&&... args sont passés au constructeur du type. Comme valeur de retour, la fonction fournit une référence lvalue T& sur l’objet nouvellement initialisé [SWS_CORE_01662].

En ce qui concerne le traitement des erreurs et la gestion des exceptions, la fonction s’écarte de la définition standard dans [variant] : elle est classée comme conditionnellement sûre vis-à-vis des exceptions (conditionally exception safe) et dispose d’une spécification noexcept conditionnelle [SWS_CORE_01662]. Un appel garantit l’absence d’exception pour autant que std::is_nothrow_constructible<T, std::initializer_list<U>&, Args&&...>::value s’évalue à true [SWS_CORE_01662]. Aucun code d’erreur AUTOSAR spécifique ou canal de signalement vers DET et DEM n’existe pour cet élément.

Concernant la concurrence et les conditions aux limites : étant donné que emplace modifie l’état de l’instance de variant, un appel concurrent sans synchronisation externe ne devrait pas être sûr pour les threads. Interprétation : avant la construction du nouvel objet, une valeur précédemment contenue est détruite, conformément au comportement général de [variant]. Question Q-548c84cc1d327030 (ouverte)

En combinaison avec des interfaces apparentées, la fonction constitue le pendant basé sur les types de la surcharge sans liste d'initialisation [SWS_CORE_01661] ainsi que des alternatives basées sur les indices [SWS_CORE_01663] et [SWS_CORE_01664]. Des concepts d'interface similaires se retrouvent pour ara::core::Optional [SWS_CORE_01120] ainsi que pour des conteneurs tels que ara::core::Vector [SWS_CORE_01366] ou ara::core::Map [SWS_CORE_01458], les opérations emplace des conteneurs n'étant, à la différence de celle-ci, pas sans danger pour les exceptions.

Cette note d'utilisation a été générée automatiquement sur la base des données de spécification d'AUTOSAR R25-11.

Header-Datei#include "ara/core/variant.h"
Scopeclass ara::core::Variant
Exception-Sicherheitconditionally exception safe

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

Record
AUTOSAR/AP/record/SWS_CORE_01662
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_01662@rel:R25-11#31d01b9e
Content hash
31d01b9e
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_01662
Status: valid/unmigrated Version: rel:R25-11#82a43049 Versionshistorie & Revisions (1 transition, 3 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_01662@rel:R25-11#82a43049
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#1585bce42026-09-30
  • R24-11rel:R24-11#70a0b4a72026-10-14
  • R25-11rel:R25-11#82a430492026-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

fonction emplace [SWS_CORE_01663]

template <std::size_t I, typename... Args> variant_alternative_t< I, Variant< Types...                > > & emplace (Args &&... args) noexcept({<cond-noexcept-11>});

As per corresponding usage in [variant] except for the following deviations: 1. Function is conditionally noexcept

GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : f8cbed1f17b1 Provenance Questions ouvertes (1)
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

Utilisation

La fonction membre emplace de la classe ara::core::Variant ([SWS_CORE_01663]) issue du fichier d'en-tête ara/core/variant.h sert à la construction directe de l'alternative déterminée par l'indice de template I dans l'espace mémoire existant de l'objet. Les arguments Args&&... args sont transmis comme paramètres. L'appel est synchrone et renvoie une référence vers la valeur nouvellement créée de type variant_alternative_t<I, Variant<Types...>> ([SWS_CORE_01663]). Le comportement est conforme à la définition dans [variant] ([SWS_CORE_01663]).

Gestion des erreurs et sécurité vis-à-vis des exceptions

En guise d'écart par rapport au standard C++, la spécification définit une clause noexcept({<cond-noexcept-11>}) conditionnelle ainsi que la propriété conditionally exception safe ([SWS_CORE_01663]). La levée d'exceptions dépend vraisemblablement du fait que le constructeur de l'alternative cible soit ou non sûr vis-à-vis des exceptions pour les types transmis Args.... Question Q-189fe417e9ef4980 (ouverte) Des codes d'erreur spécifiques, des valeurs de retour en cas d'erreur ou des notifications au DET ou au DEM ne sont pas spécifiés pour cette fonction.

Interaction et alternatives

Au sein du module core et du type ara::core::Variant, la fonction est intégrée dans un système d'autres surcharges :

Cette note d'utilisation est basée sur les spécifications du module core issues de la version R25-11.

Header-Datei#include "ara/core/variant.h"
Scopeclass ara::core::Variant
Exception-Sicherheitconditionally exception safe

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

Record
AUTOSAR/AP/record/SWS_CORE_01663
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_01663@rel:R25-11#79b43c24
Content hash
79b43c24
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_01663
Status: valid/unmigrated Version: rel:R25-11#a87bd2d7 Versionshistorie & Revisions (1 transition, 3 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_01663@rel:R25-11#a87bd2d7
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#f203d4192026-09-30
  • R24-11rel:R24-11#f520ae852026-10-14
  • R25-11rel:R25-11#a87bd2d72026-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

fonction emplace [SWS_CORE_01664]

template <std::size_t I, typename U, typename... Args> variant_alternative_t< I, Variant< Types... > > & emplace (std::initializer_list< U > il, Args &&... args) noexcept( {<cond-noexcept-12>});

As per corresponding usage in [variant] except for the following deviations: 1. Function is conditionally noexcept

GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : a600ca3cb60d Provenance Questions ouvertes (1)
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

La fonction membre emplace issue de ara/core/variant.h construit de manière synchrone une nouvelle valeur d'alternative directement sur place au sein d'une instance existante de ara::core::Variant [SWS_CORE_01664]. Le type à adresser est alors déterminé de manière fixe par l'indice de template I. L'appel reçoit une liste d'initialisateurs il du type std::initializer_list<U> ainsi que des arguments optionnels args et renvoie une référence vers la valeur nouvellement créée de type variant_alternative_t<I, Variant<Types...>>& [SWS_CORE_01664].

Pour le traitement des erreurs, l'opération est classée comme conditionnellement sûre vis-à-vis des exceptions (conditionally exception safe) et pourvue d'un noexcept conditionnel [SWS_CORE_01664]. L'évaluation de la condition {<cond-noexcept-12>} devrait vraisemblablement dépendre du fait que le constructeur du type cible avec il et args ne lève pas d'exceptions. Question Q-87f90253fc61c883 (ouverte) Des codes d'erreur spécifiques ainsi que des messages au DET ou au DEM ne sont pas définis dans la spécification ; le comportement en cas d'exception suit, à l'exception de la déclaration noexcept, le comportement standard de [variant] [SWS_CORE_01664].

Au sein de ara::core::Variant, la fonction complète la création basée sur l'indice sans liste d'initialisateurs [SWS_CORE_01663] ainsi que les deux variantes basées sur les types [SWS_CORE_01661] et [SWS_CORE_01662]. Des fonctions emplace analogues pour la construction directe sur place existent également dans le module core pour ara::core::Optional ([SWS_CORE_01119], [SWS_CORE_01120], [SWS_CORE_01164]) ainsi que pour des conteneurs tels que ara::core::Vector ([SWS_CORE_01366]) et ara::core::Map ([SWS_CORE_01458]).

Cette note d'utilisation a été générée de manière automatisée sur la base de la spécification.

Header-Datei#include "ara/core/variant.h"
Scopeclass ara::core::Variant
Exception-Sicherheitconditionally exception safe

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

Record
AUTOSAR/AP/record/SWS_CORE_01664
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_01664@rel:R25-11#e253b8b9
Content hash
e253b8b9
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_01664
Status: valid/unmigrated Version: rel:R25-11#1815524e Versionshistorie & Revisions (1 transition, 3 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_01664@rel:R25-11#1815524e
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#cc05518c2026-09-30
  • R24-11rel:R24-11#6ff4fca72026-10-14
  • R25-11rel:R25-11#1815524e2026-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

fonction index [SWS_CORE_01665]

constexpr std::size_t index () const noexcept;

As per corresponding usage in [variant]

GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : fb0fc41b4094 Provenance Questions ouvertes (1)
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

La fonction membre index de la classe ara::core::Variant sert à interroger de manière synchrone l'indice basé sur zéro du type actuellement contenu conformément à la spécification [SWS_CORE_01665]. Elle se comporte de manière analogue à l'utilisation correspondante dans le type C++ standard std::variant (« As per corresponding usage in [variant] »), ne prend aucun paramètre et renvoie l'indice actuel sous la forme d'un std::size_t. Elle est déclarée dans l'en-tête ara/core/variant.h et qualifiée de constexpr ainsi que noexcept.

Concernant le traitement des erreurs et la sécurité vis-à-vis des exceptions, la méthode est spécifiée comme exception safe [SWS_CORE_01665]. Étant donné qu'elle est déclarée noexcept, elle ne lève elle-même aucune exception et ne déclenche aucune condition d'erreur. Les appelants peuvent évaluer l'indice retourné afin de s'assurer, avant d'accéder à des valeurs alternatives, de quel type est actif dans ara::core::Variant.

En interaction avec les fonctions d'accès typées ara::core::get, index joue un rôle central : les surcharges de get pour les lvalues et les rvalues vérifient explicitement la condition variant.index() != I selon [SWS_CORE_01613], [SWS_CORE_01614], [SWS_CORE_01615] et [SWS_CORE_01616]. Si l'indice ne correspond pas à l'indice de position demandé I, la violation IsoStdBadVariantAccessViolation est déclenchée, contrairement à std::bad_variant_access. Une comparaison préalable au moyen de index() empêche cet accès erroné au moment de l'exécution.

En ce qui concerne la concurrence, la méthode en tant qu'opération const est sûre pour les accès en lecture concurrents sur le même variant, tant qu'aucune modification concurrente n'a lieu ; une synchronisation interne contre les accès en écriture parallèles ne devrait pas être présente. Question Q-12e0dad0a6b8c5d0 (ouverte)

Ce texte a été généré par une IA sur la base de la spécification AUTOSAR R25-11.

Header-Datei#include "ara/core/variant.h"
Scopeclass ara::core::Variant
Exception-Sicherheitexception safe

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

Record
AUTOSAR/AP/record/SWS_CORE_01665
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_01665@rel:R25-11#13d0d2de
Content hash
13d0d2de
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_01665
Status: valid/unmigrated Version: rel:R25-11#79f9fbbd Versionshistorie & Revisions (1 transition, 3 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_01665@rel:R25-11#79f9fbbd
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#efd439dd2026-09-30
  • R24-11rel:R24-11#50988c112026-10-14
  • R25-11rel:R25-11#79f9fbbd2026-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

fonction operator= [SWS_CORE_01658]

constexpr Variant & operator= (const Variant &other) noexcept( {<cond-noexcept-8>});

As per corresponding usage in [variant] except for the following deviations: 1. Function is conditionally noexcept

Header-Datei#include "ara/core/variant.h"
Scopeclass ara::core::Variant
Exception-Sicherheitconditionally exception safe

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

Record
AUTOSAR/AP/record/SWS_CORE_01658
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_01658@rel:R25-11#f2f326a5
Content hash
f2f326a5
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_01658
Status: valid/unmigrated Version: rel:R25-11#9502ca1b Versionshistorie & Revisions (1 transition, 3 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_01658@rel:R25-11#9502ca1b
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#e70fc86a2026-09-30
  • R24-11rel:R24-11#9c37dac32026-10-14
  • R25-11rel:R25-11#9502ca1b2026-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

fonction operator= [SWS_CORE_01659]

constexpr Variant & operator= (Variant &&other) noexcept( {<cond-noexcept-9>});

As per corresponding usage in [variant]

Header-Datei#include "ara/core/variant.h"
Scopeclass ara::core::Variant
Exception-Sicherheitconditionally exception safe

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

Record
AUTOSAR/AP/record/SWS_CORE_01659
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_01659@rel:R25-11#8bb206d0
Content hash
8bb206d0
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_01659
Status: valid/unmigrated Version: rel:R25-11#39ffdcbb Versionshistorie & Revisions (1 transition, 3 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_01659@rel:R25-11#39ffdcbb
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#860115b42026-09-30
  • R24-11rel:R24-11#a820e86d2026-10-14
  • R25-11rel:R25-11#39ffdcbb2026-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

fonction operator= [SWS_CORE_01660]

template <typename T> Variant & operator= (T &&value) noexcept({<cond-noexcept-10>});

As per corresponding usage in [variant]

Header-Datei#include "ara/core/variant.h"
Scopeclass ara::core::Variant
Exception-Sicherheitconditionally exception safe

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

Record
AUTOSAR/AP/record/SWS_CORE_01660
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_01660@rel:R25-11#3ad28909
Content hash
3ad28909
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_01660
Status: valid/unmigrated Version: rel:R25-11#255af730 Versionshistorie & Revisions (1 transition, 3 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_01660@rel:R25-11#255af730
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#3ef1dc682026-09-30
  • R24-11rel:R24-11#c43a33d12026-10-14
  • R25-11rel:R25-11#255af7302026-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

fonction swap [SWS_CORE_01667]

void swap (Variant &other) noexcept({<cond-noexcept-13>});

As per corresponding usage in [variant] except for the following deviations: 1. Conditions for the conditional exception safety are modified

Header-Datei#include "ara/core/variant.h"
Scopeclass ara::core::Variant
Exception-Sicherheitconditionally exception safe

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

Record
AUTOSAR/AP/record/SWS_CORE_01667
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_01667@rel:R25-11#943bea9e
Content hash
943bea9e
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_01667
Status: valid/unmigrated Version: rel:R25-11#5ae6bafc Versionshistorie & Revisions (1 transition, 3 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_01667@rel:R25-11#5ae6bafc
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#1e70aeed2026-09-30
  • R24-11rel:R24-11#2a023e892026-10-14
  • R25-11rel:R25-11#5ae6bafc2026-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

fonction valueless_by_exception [SWS_CORE_01666]

constexpr bool valueless_by_exception () const noexcept;

As per corresponding usage in [variant]

GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : 015c4319d2b5 Provenance Questions ouvertes (2)
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

Utilisation

La fonction membre valueless_by_exception de la classe ara::core::Variant est mise à disposition dans le module core via le fichier d'en-tête #include "ara/core/variant.h" ([SWS_CORE_01666]). Conformément à sa signature constexpr bool valueless_by_exception () const noexcept;, elle ne requiert aucun paramètre d'appel et renvoie de manière synchrone une valeur booléenne ([SWS_CORE_01666]). La signification fonctionnelle s'aligne sur la sémantique usuelle de [variant] (« As per corresponding usage in [variant] ») ([SWS_CORE_01666]). Interprétation : l'état retourné true signale probablement à l'appelant qu'une affectation de valeur ou un changement de type antérieur a été interrompu par la survenue d'une exception et que l'objet Variant ne représente donc temporairement aucun état valide. Question Q-af7c00c7eb4ef5a1 (ouverte)

Gestion des erreurs et sécurité vis-à-vis des exceptions

Concernant le comportement en cas d'erreur, la méthode est déclarée comme noexcept et formellement classée comme exception safe ([SWS_CORE_01666]). Il n'existe pas de cas d'erreur propre lors de l'interrogation ; la fonction ne lève pas d'exceptions C++ ([SWS_CORE_01666]). Aucun code d'erreur spécifique, description de retour ou notification à des entités de diagnostic et de surveillance des erreurs telles que DET ou DEM n'est défini pour cet élément ([SWS_CORE_01666]).

Concurrence et restrictions

Étant donné que valueless_by_exception est spécifiée comme méthode const et constexpr, aucun accès modificateur à l'état interne de l'objet n'a lieu pendant l'exécution ([SWS_CORE_01666]). Interprétation : des interrogations en lecture simultanées de la même instance à partir de plusieurs threads devraient pouvoir être exécutées en toute sécurité sans synchronisation particulière, tant que des opérations d'écriture concurrentes restent exclues. Question Q-5c28f8cef1c1f097 (ouverte)

Cette note d’utilisation a été générée de manière automatisée sur la base d’AUTOSAR R25-11.

Header-Datei#include "ara/core/variant.h"
Scopeclass ara::core::Variant
Exception-Sicherheitexception safe

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

Record
AUTOSAR/AP/record/SWS_CORE_01666
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_01666@rel:R25-11#de5e218a
Content hash
de5e218a
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_01666
Status: valid/unmigrated Version: rel:R25-11#172a8799 Versionshistorie & Revisions (1 transition, 3 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_01666@rel:R25-11#172a8799
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#3aa8f2a32026-09-30
  • R24-11rel:R24-11#d0913a2b2026-10-14
  • R25-11rel:R25-11#172a87992026-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

fonction ~Variant [SWS_CORE_01657]

~Variant () noexcept({<cond-noexcept-7>});

As per corresponding usage in [variant] except for the following deviations: 1. Function is conditionally noexcept

Header-Datei#include "ara/core/variant.h"
Scopeclass ara::core::Variant
Exception-Sicherheitconditionally exception safe

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

Record
AUTOSAR/AP/record/SWS_CORE_01657
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_01657@rel:R25-11#aaf82cb9
Content hash
aaf82cb9
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_01657
Status: valid/unmigrated Version: rel:R25-11#00ac5736 Versionshistorie & Revisions (1 transition, 3 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_01657@rel:R25-11#00ac5736
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#9a29a7492026-09-30
  • R24-11rel:R24-11#7fdccbe62026-10-14
  • R25-11rel:R25-11#00ac57362026-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