DEENESPTFRRUARHIKOZHNL

classe ara::core::Bitset::reference

[SWS_CORE_01759]

class reference {...};

Implements std::bitset::reference type from [bitset]

Header-Datei#include "ara/core/bitset.h"
Forwarding-Header#include "ara/core/core_fwd.h"
Scopeclass ara::core::Bitset

Guide utilisateurGÉNÉRÉ PAR IA

Sert d'objet proxy pour l'accès en écriture et l'inversion de bits individuels dans un bitset.
GÉNÉRÉ PAR IA non vérifié Modèle : gemini-3.8-flash-medium · Effort : medium · Température : non réglable · Prompt : 9b7177bcd0af Provenance Questions ouvertes (3)
traduit du guide allemandgemini-3.8-flash-low · 2026-10-13 · Original allemand

Sert d'objet proxy pour l'accès en écriture et l'inversion de bits individuels dans un bitset.

La classe utilitaire ara::core::Bitset::reference fait office de type proxy pour l'accès de type lvalue à des bits individuels d'un ara::core::Bitset. Elle permet la modification ciblée de la valeur du bit référencé, en particulier son inversion via la fonction membre flip() conformément à [SWS_CORE_01712]. Grâce à la déclaration de flip() comme noexcept, l'opération est garantie sûre vis-à-vis des exceptions [SWS_CORE_01712]. Comme contrainte essentielle, l'objet proxy ne reste valide, selon l'interprétation, que pendant la durée de vie du conteneur englobant.

Contexte

La classe utilitaire imbriquée ara::core::Bitset::reference agit, au sein du module core de l'AUTOSAR Adaptive Platform, comme un objet proxy pour l'accès à des bits individuels dans un ara::core::Bitset. Comme les bits individuels ne possèdent pas d'adresse mémoire propre dans le système de types C++ et ne peuvent donc pas être représentés directement sous forme de référence native (bool&), reference implémente le concept de std::bitset::reference issu de la norme C++ [bitset]. La classe sert d'intermédiaire entre le code appelant et la mémoire de bits interne du conteneur ara::core::Bitset. Elle permet aux développeurs de traiter un bit individuel syntaxiquement et sémantiquement comme une référence modifiable, en mappant directement les opérations sur le proxy sur le bit sous-jacent dans le bitset. La fonction membre flip(), conforme à [SWS_CORE_01712], constitue un élément essentiel de cette interface et fournit une inversion directe de l'état du bit adressé.

Cycle de vie

Les instances de ara::core::Bitset::reference présentent typiquement un caractère éphémère. Selon l'interprétation, la création n'est pas effectuée comme un objet autonome par le développeur d'application, mais est initiée en interne par les mécanismes d'accès non constants du conteneur ara::core::Bitset lorsqu'un accès lvalue à une position de bit spécifique est requis. L'objet proxy créé se lie logiquement à la position de bit spécifique et à la zone mémoire sous-jacente du conteneur. La durée de vie de l'instance de reference est ainsi strictement couplée à l'existence de l'objet Bitset englobant : si le Bitset référencé est détruit ou si sa mémoire devient invalide, un accès ultérieur via l'objet proxy conduit vraisemblablement à un comportement indéfini (dangling reference). Question Q-44ce3478c9a2d987 (ouverte) Après l'achèvement d'opérations telles que l'inversion de bits via flip() conformément à [SWS_CORE_01712], l'objet temporaire est généralement détruit immédiatement. En matière de concurrence, il convient de noter que des accès concurrents en écriture à des bits distincts ou identiques d'un même conteneur via des instances distinctes de reference sans synchronisation externe ne sont vraisemblablement pas thread-safe.

Parcours d'utilisation

Le cas d'utilisation principal de ara::core::Bitset::reference consiste en la consultation et la modification ciblées de valeurs de bits individuels. Dans le déroulement typique, un appelant accède à une position de bit dans ara::core::Bitset via l'opérateur d'indexation, ce qui renvoie un objet temporaire reference. Des opérations de modification peuvent dès lors être exécutées sur cette référence. Spécifiquement pour l'inversion de la valeur du bit, la classe met à disposition la fonction membre flip(), qui est spécifiée conformément à [SWS_CORE_01712]. Cette méthode inverse l'état actuel du bit référencé (0 devient 1, 1 devient 0) et renvoie une référence lvalue vers l'objet proxy lui-même (reference&). Cela permet le chaînage d'autres appels ou une réutilisation directe du résultat modifié.

Inversion d'un bit via reference::flipAnwenderara::core::Bitsetara::core::Bitset::referenceoperator[](pos)reference-Instanzflip()Inverser l'état du bit à la position posreference& (*this)

Diagramme de séquence : déroulement typique de l'inversion de bit via l'objet proxy reference. Sources : [SWS_CORE_01712]

Scénarios d'erreur

La classe ara::core::Bitset::reference se distingue par une conception axée sur la robustesse et les performances. Pour la fonction membre centrale flip(), la sécurité vis-à-vis des exceptions « exception safe » ainsi que l'identifiant noexcept sont explicitement définis conformément à [SWS_CORE_01712]. Cela signifie que l'appel de flip() ne lève à coup sûr aucune exception C++. Les états d'erreur ou les traitements d'exception ne surviennent donc pas lors de cet appel ; la validité de la référence sous-jacente à l'objet conteneur constitue une précondition pour une exécution sans erreur.

Ce guide a été généré par une IA sur la base de la spécification AUTOSAR pour l'Adaptive Platform (Release R25-11).

Diagramme de classes UML

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

G nara__core__Bitset__reference533 reference + flip()

Méthodes

flip fonction

≙ [bitset]

reference & ara::core::Bitset< N >::reference::flip () noexcept;

Documentation des méthodes

fonction flip [SWS_CORE_01712] Upstream: RS_AP_00130

reference & ara::core::Bitset< N >::reference::flip () noexcept;

As per corresponding usage in [bitset]

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

Utilisation

La fonction membre synchrone flip de la classe proxy ara::core::Bitset::reference sert à inverser le bit actuellement référencé [SWS_CORE_01712]. Elle est déclarée via le fichier d'en-tête ara/core/bitset.h. L'appel s'effectue sans paramètre directement sur une instance de référence existante. Comme valeur de retour, la fonction renvoie une référence sur l'objet reference modifié (reference&). Interprétation : conformément à l'indication de la spécification « As per corresponding usage in [bitset] », le comportement devrait correspondre à celui de std::bitset::reference::flip, ce qui a pour effet de nier la valeur du bit et de renvoyer *this. Question Q-23d82576a1b93125 (ouverte)

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

L'interface est déclarée comme noexcept et spécifiée comme sûre vis-à-vis des exceptions (exception safe) [SWS_CORE_01712]. Aucun état d'erreur spécifique ni code d'erreur n'apparaît, car aucun paramètre n'est transmis et aucune vérification de plage n'est nécessaire.

Interaction au sein du module

Au sein de ara::core::Bitset, la fonction complète les autres opérations d'inversion du module :

  • ara::core::Bitset::reference::flip bascule de manière ciblée le bit individuel adressé via la référence [SWS_CORE_01712].
  • ara::core::Bitset::flip() inverse de manière synchrone tous les bits de l'ensemble du bitset sans paramètre et renvoie une référence sur le bitset [SWS_CORE_01730].
  • ara::core::Bitset::flip(std::size_t pos) inverse le bit à la position d'index pos et renvoie un Result, qui échoue avec IsoStdOutOfRangeViolation si l'index est invalide [SWS_CORE_01731].

Ce texte a été généré et édité par une IA.

Header-Datei#include "ara/core/bitset.h"
Scopeclass ara::core::Bitset::reference
Exception-Sicherheitexception safe

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

Record
AUTOSAR/AP/record/SWS_CORE_01712
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_01712@rel:R25-11#d203a5df
Content hash
d203a5df
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_01712
Status: valid/unmigrated Version: rel:R25-11#aa62487c Versionshistorie & Revisions (1 transition)
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_01712@rel:R25-11#aa62487c
Point-in-Time History:
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