DEENESPTFRRUARHIKOZHNL

클래스 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

사용자 가이드AI 생성

Bitset에서 개별 비트의 쓰기 접근 및 반전을 위한 프록시 객체 역할을 합니다.
AI 생성 미검증 모델: gemini-3.8-flash-medium · 노력: medium · 온도: 제어 불가 · 프롬프트: 9b7177bcd0af 출처 열린 질문 (3)
독일어 가이드에서 번역됨gemini-3.8-flash-low · 2026-10-13 · 독일어 원문

Bitset에서 개별 비트의 쓰기 접근 및 반전을 위한 프록시 객체 역할을 합니다.

도우미 클래스 ara::core::Bitset::reference은(는) ara::core::Bitset의 개별 비트에 대한 lvalue 방식 접근을 위한 프록시 타입으로 기능합니다. 이는 참조된 비트 값의 맞춤형 수정, 특히 [SWS_CORE_01712]에 따른 멤버 함수 flip()을(를) 통한 반전을 가능하게 합니다. flip()이(가) noexcept(으)로 선언되어 있어 해당 연산은 예외로부터 안전함이 보장됩니다 [SWS_CORE_01712]. 주요 제약 조건으로서 프록시 객체는 해석상 감싸고 있는 컨테이너의 수명 동안에만 유효합니다.

컨텍스트

중첩된 도우미 클래스 ara::core::Bitset::reference은(는) AUTOSAR Adaptive Platform의 모듈 core 내에서 ara::core::Bitset의 개별 비트에 접근하기 위한 프록시 객체로 기능합니다. C++ 타입 시스템에서 개별 비트는 독립된 메모리 주소를 갖지 않아 네이티브 참조(bool&)로 직접 표현될 수 없으므로, reference은(는) C++ 표준 [bitset]의 std::bitset::reference 개념을 구현합니다. 이 클래스는 호출 코드와 컨테이너의 내부 비트 스토리지 간의 중재자 역할을 합니다 ara::core::Bitset. 프록시에 대한 연산이 Bitset의 기본 비트에 직접 매핑되도록 하여 개발자가 단일 비트를 구문론적 및 의미론적으로 수정 가능한 참조처럼 다룰 수 있도록 합니다. 이 인터페이스의 필수적인 부분은 [SWS_CORE_01712]에 따른 멤버 함수 flip()이며, 이는 주소 지정된 비트의 직접적인 상태 반전을 제공합니다.

수명 주기

ara::core::Bitset::reference의 인스턴스는 일반적으로 수명이 짧은 특성을 갖습니다. 해석상 애플리케이션 개발자에 의해 독립된 객체로 생성되지 않고, 특정 비트 위치에 대한 lvalue 접근이 요청될 때 컨테이너 ara::core::Bitset의 비-상수(non-const) 접근 메커니즘을 통해 내부적으로 시작됩니다. 생성된 프록시 객체는 논리적으로 특정 비트 위치 및 컨테이너의 기본 메모리 영역에 바인딩됩니다. 따라서 reference 인스턴스의 수명은 감싸고 있는 Bitset 객체의 존재에 엄격히 결속됩니다. 참조된 Bitset이(가) 소멸되거나 해당 메모리가 유효하지 않게 되면 프록시 객체를 통한 사후 접근은 정의되지 않은 동작(Dangling Reference)으로 이어질 것으로 보입니다. [SWS_CORE_01712]에 따른 flip()을(를) 통한 비트 반전과 같은 연산이 완료된 후 임시 객체는 일반적으로 즉시 폐기됩니다. 동시성과 관련하여 외부 동기화 없이 별도의 reference 인스턴스를 통해 동일한 컨테이너의 서로 다른 비트 또는 동일한 비트에 동시에 쓰기 접근하는 것은 스레드 안전하지 않을 것으로 보입니다. 질문 Q-44ce3478c9a2d987 (열림)

사용 경로

ara::core::Bitset::reference의 주요 사용 사례는 개별 비트 값의 맞춤형 조회 및 수정으로 구성됩니다. 일반적인 흐름에서 호출자는 인덱스 연산자를 통해 ara::core::Bitset의 비트 위치에 접근하며, 이를 통해 임시 reference 객체가 반환됩니다. 이제 이 참조에 대해 수정 연산을 수행할 수 있습니다. 특히 비트 값의 반전을 위해 클래스는 [SWS_CORE_01712]에 따라 명시된 멤버 함수 flip()을(를) 제공합니다. 이 메서드는 참조된 비트의 현재 상태를 반전시키고(0은 1로, 1은 0으로 변경) 프록시 객체 자체에 대한 lvalue 참조(reference&)를 반환합니다. 이를 통해 추가 호출의 연쇄(chaining) 또는 수정된 결과의 직접적인 재사용이 가능합니다.

reference::flip을 통한 비트 반전Anwenderara::core::Bitsetara::core::Bitset::referenceoperator[](pos)reference-Instanzflip()pos 위치의 비트 상태 반전reference& (*this)

시퀀스 다이어그램: 프록시 객체 reference를 통한 비트 반전의 일반적인 흐름. 출처: [SWS_CORE_01712]

오류 시나리오

클래스 ara::core::Bitset::reference은(는) 견고성과 성능을 고려하여 설계된 디자인을 특징으로 합니다. 핵심 멤버 함수 flip()에 대해 [SWS_CORE_01712]에 따라 예외 안전성 "exception safe" 및 식별자 noexcept이(가) 명시적으로 정의되어 있습니다. 이는 flip() 호출이 C++ 예외를 발생시키지 않음이 보장됨을 의미합니다. 따라서 이 호출에서는 오류 상태나 예외 처리가 발생하지 않으며, 오류 없는 실행을 위한 전제 조건은 컨테이너 객체에 대한 기본 참조의 유효성입니다.

이 가이드는 Adaptive Platform(Release R25-11)용 AUTOSAR 사양을 바탕으로 AI에 의해 작성되었습니다.

UML 클래스 다이어그램

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

G nara__core__Bitset__reference533 reference + flip()

메서드

flip 함수

≙ [bitset]

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

메서드 문서

함수 flip [SWS_CORE_01712] Upstream: RS_AP_00130

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

As per corresponding usage in [bitset]

AI 생성 미검증 모델: gemini-3.8-flash-medium · 노력: medium · 온도: 제어 불가 · 프롬프트: 717c5ca36cdd 출처 열린 질문 (1)
독일어 가이드에서 번역됨gemini-3.8-flash-low · 2026-10-13 · 독일어 원문

사용

프록시 클래스 ara::core::Bitset::reference의 동기식 멤버 함수 flip은 현재 참조된 비트를 반전시키는 역할을 합니다[SWS_CORE_01712]. 이 함수는 헤더 파일 ara/core/bitset.h을 통해 선언되어 있습니다. 호출은 기존 참조 인스턴스에서 매개변수 없이 직접 수행됩니다. 반환값으로 이 함수는 수정된 reference 객체(reference&)에 대한 참조를 반환합니다. 해석: 사양 설명 “As per corresponding usage in [bitset]”에 따르면, 동작은 std::bitset::reference::flip의 동작과 일치할 것으로 추정되며, 이에 따라 비트 값이 부정되고 *this이 반환됩니다. 질문 Q-23d82576a1b93125 (열림)

오류 처리 및 예외 안전성

이 인터페이스는 noexcept(으)로 선언되어 있으며 예외 안전(exception safe)으로 명시되어 있습니다[SWS_CORE_01712]. 매개변수가 전달되지 않고 범위 검사가 필요하지 않으므로 특정 오류 상태나 오류 코드는 발생하지 않습니다.

모듈 내 상호 작용

ara::core::Bitset 내에서 이 함수는 모듈의 다른 반전 연산을 보완합니다:

  • ara::core::Bitset::reference::flip은 참조를 통해 주소 지정된 개별 비트를 목표로 반전시킵니다[SWS_CORE_01712].
  • ara::core::Bitset::flip()은 매개변수 없이 전체 비트셋의 모든 비트를 동기식으로 반전시키고 비트셋에 대한 참조를 반환합니다[SWS_CORE_01730].
  • ara::core::Bitset::flip(std::size_t pos)은 인덱스 위치 pos의 비트를 반전시키고 Result를 반환하며, 인덱스가 유효하지 않은 경우 IsoStdOutOfRangeViolation(으)로 실패합니다[SWS_CORE_01731].

이 텍스트는 AI에 의해 작성되고 큐레이션되었습니다.

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#0df5707d
Content hash
0df5707d
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