DEENESPTFRRUARHIKOZHNL

स्ट्रक्चर ara::core::in_place_index_t

[SWS_CORE_04031] Upstream: RS_AP_00130

template <std::size_t Index> struct in_place_index_t {...};

Denote an index-distinguishing operation to be performed in-place. An instance of this type can be passed to certain constructors of ara::core::Variant to denote the intention that construction of the contained type shall be done in-place, i.e. without any copying taking place.

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

उपयोगकर्ता गाइडएआई जनित

Variant में उसके इंडेक्स के आधार पर किसी मान के सीधे इन-प्लेस निर्माण (in-place construction) के लिए टैग प्रकार के रूप में कार्य करता है।
एआई-जनित असत्यापित मॉडल: gemini-3.8-flash-medium · प्रयास: medium · तापमान: नियंत्रित नहीं किया जा सकता · प्रॉम्प्ट: 39c809af4202 उद्गम खुले प्रश्न (2)
जर्मन मार्गदर्शिका से अनूदितgemini-3.8-flash-low · 2026-10-13 · जर्मन मूल

Variant में उसके इंडेक्स के आधार पर किसी मान के सीधे इन-प्लेस निर्माण (in-place construction) के लिए टैग प्रकार के रूप में कार्य करता है।

क्लास टेम्पलेट ara::core::in_place_index_t, ara::core::Variant के भीतर एक विशिष्ट इंडेक्स पर इन-प्लेस निर्माण को चिह्नित करने के लिए एक टैग प्रकार के रूप में कार्य करता है, ताकि लक्ष्य मान के अनावश्यक कॉपी या मूव ऑपरेशनों से बचा जा सके। इंस्टांसेस को विशेष रूप से उपयुक्त Variant कंस्ट्रक्टरों को पास किया जाता है, जहाँ निर्माण ara/core/utility.h से डिफ़ॉल्ट कंस्ट्रक्टर के माध्यम से होता है [SWS_CORE_04032]। चूंकि कंस्ट्रक्टर को explicit और noexcept के रूप में परिभाषित किया गया है, अंतर्निहित प्रकार रूपांतरण (implicit type conversion) बहिष्कृत हैं और इंस्टांशिएशन की गारंटी अपवाद-सुरक्षित है [SWS_CORE_04032]।

संदर्भ

क्लास टेम्पलेट ara::core::in_place_index_t AUTOSAR Adaptive Platform के मॉड्यूल core में एक सहायक संरचना है और हेडर फ़ाइल ara/core/utility.h के माध्यम से उपलब्ध कराई जाती है [SWS_CORE_04032]। इसकी कार्यात्मक भूमिका इन-प्लेस ऑपरेशनों के लिए एक विशिष्ट टैग प्रकार के रूप में कार्य करना है, जिन्हें एक संख्यात्मक इंडेक्स द्वारा विभेदित किया जाता है। इस प्रकार का एक उदाहरण (instance) ara::core::Variant के विशिष्ट कंस्ट्रक्टरों को यह इरादा इंगित करने के लिए पास किया जाता है कि समाहित प्रकार का निर्माण बिना कॉपी या मूव ऑपरेशनों को निष्पादित किए सीधे उसी स्थान पर (“in-place”) किया जाना चाहिए।

कॉलर और सम-टाइप ara::core::Variant के बीच सहयोग में, ara::core::in_place_index_t टैग-डिस्पैचिंग का कार्य संभालता है। व्याख्या: इंडेक्स-आधारित विभेदन विशेष रूप से उन Variant इंस्टांसेस के लिए प्रासंगिक होना चाहिए जिनमें एक ही प्रकार के कई विकल्प शामिल हैं; इस मामले में केवल डेटा प्रकार के माध्यम से चयन अस्पष्ट होगा, जिससे टेम्पलेट पैरामीटर Index के माध्यम से एड्रेसिंग टाइप-पैक में सटीक प्रकार के विकल्प को निर्धारित करती है। प्रश्न Q-fc429a7c9e7e9362 (खुला)

जीवनचक्र

ara::core::in_place_index_t का जीवनचक्र प्राथमिक है और जटिल स्थिति परिवर्तनों से मुक्त है। इसका निर्माण डिफ़ॉल्ट कंस्ट्रक्टर explicit in_place_index_t() noexcept = default; [SWS_CORE_04032] के माध्यम से होता है। explicit के रूप में अंकन के माध्यम से अंतर्निहित प्रकार रूपांतरण को रोका जाता है, जो एक स्पष्ट और सख्त प्रकार-सुरक्षित (type-strict) इंस्टांशिएशन को बाध्य करता है [SWS_CORE_04032]।

चूंकि ara::core::in_place_index_t एक शुद्ध संकेतक के रूप में कार्य करता है और इसमें कोई आंतरिक विशेषताएँ या गतिशील संसाधन नहीं होते हैं, इसलिए ऑब्जेक्ट पूरी तरह से स्टेटलेस (stateless) है। विनाश सामान्य है और इसके कोई दुष्प्रभाव (side effects) नहीं होते हैं। कॉनकरेंसी के संबंध में, संरचना स्वाभाविक रूप से थ्रेड-सुरक्षित है: चूंकि कोई परिवर्तनशील स्थितियाँ मौजूद नहीं हैं, इसलिए सिंक्रोनाइज़ेशन ओवरहेड के बिना थ्रेड सीमाओं के पार इंस्टांसेस का उपयोग किया जा सकता है।

उपयोग पथ

ara::core::in_place_index_t के उपयोग का विशिष्ट क्रम निम्नलिखित चरणों में विभाजित है:

  • इंडेक्स निर्धारण: कॉलर संख्यात्मक टेम्पलेट पैरामीटर Index निर्धारित करता है, जो ara::core::Variant के भीतर वांछित विकल्प का प्रतिनिधित्व करता है।
  • टैग इंस्टांशिएशन: ara::core::in_place_index_t<Index> का एक इंस्टांस डिफ़ॉल्ट कंस्ट्रक्टर के माध्यम से बनाया जाता है [SWS_CORE_04032]। व्याख्या: व्यवहार में, निर्माण संभवतः कॉल में सीधे एक अस्थायी तर्क (temporary argument) के रूप में होना चाहिए। प्रश्न Q-7c6292c2e97347b0 (खुला)
  • कंस्ट्रक्टर को पास करना: टैग इंस्टांस को ara::core::Variant के कंस्ट्रक्टर में पहले तर्क के रूप में पास किया जाता है, जिसके बाद उस स्थिति पर प्रबंधित लक्षित प्रकार के लिए कंस्ट्रक्टर तर्क दिए जाते हैं।
  • प्रत्यक्ष इनिशियलाइज़ेशन: ara::core::Variant बिना किसी पूर्व अस्थायी प्रतियों के निर्माण के सीधे प्रदान किए गए मेमोरी क्षेत्र में लक्षित ऑब्जेक्ट का निर्माण करता है।
in_place_index_t के माध्यम से Variant मान का इन-प्लेस निर्माणAnwenderin_place_index_t<Index>प्रकारZielobjektexplicit in_place_index_t()Tag-InstanzVariant(in_place_index_t<Index>, args...)इंडेक्स रिज़ॉल्व करेंIn-Place-Konstruktion(args...)Objekt instanziiertInitialisierte Variant-Instanz

अनुक्रम आरेख (Sequence diagram): ara::core::in_place_index_t के माध्यम से Variant मान के इन-प्लेस निर्माण का विशिष्ट प्रवाह। स्रोत: [SWS_CORE_04032]

त्रुटि परिदृश्य

त्रुटि सहनशीलता (fault tolerance) के संबंध में, ara::core::in_place_index_t अधिकतम मजबूती प्रदर्शित करता है। डिफ़ॉल्ट कंस्ट्रक्टर noexcept के साथ निर्दिष्ट है और इसे अपवाद-सुरक्षित (“exception safe”) माना जाता है [SWS_CORE_04032]। इस संरचना के लिए न तो कोई त्रुटि कोड हैं और न ही कोई परिभाषित त्रुटि स्थितियाँ।

अंतर्निहित रूपांतरणों (implicit conversions) में गलत उपयोग को संकलन समय (compile time) पर explicit के रूप में विनिर्देश द्वारा अस्वीकार कर दिया जाता है [SWS_CORE_04032]। यदि ara::core::Variant के इन-प्लेस कंस्ट्रक्टर के निष्पादन के दौरान कोई अपवाद उत्पन्न होता है, तो यह ara::core::in_place_index_t से उत्पन्न नहीं होता है, बल्कि निर्मित लक्षित प्रकार के त्रुटि व्यवहार के कारण होता है।

यह गाइड AUTOSAR विनिर्देश R25-11 के आधार पर एक AI द्वारा जनरेट किया गया था।

UML क्लास आरेख

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

G nara__core__in_place_index_t938 «struct» in_place_index_t + in_place_index_t()

कंस्ट्रक्टर और डिस्ट्रक्टर

in_place_index_t फ़ंक्शन

Default constructor

explicit in_place_index_t () noexcept=default;

मेथड का प्रलेखन

फ़ंक्शन in_place_index_t [SWS_CORE_04032] Upstream: RS_AP_00130

explicit in_place_index_t () noexcept=default;

Default constructor

Header-Datei#include "ara/core/utility.h"
Scopestruct ara::core::in_place_index_t
Exception-Sicherheitexception safe

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

Record
AUTOSAR/AP/record/SWS_CORE_04032
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_04032@rel:R25-11#3c7892cb
Content hash
3c7892cb
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_04032
Status: valid/unmigrated Version: rel:R25-11#ed0aabbb 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_04032@rel:R25-11#ed0aabbb
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#8aa0e9952026-09-30
  • R19-11rel:R19-11#1dfe84832026-10-14
  • R20-11rel:R20-11#98f310882026-10-14
  • R21-11rel:R21-11#98f310882026-10-14
  • R22-11rel:R22-11#b23504bd2026-10-14
  • R23-11rel:R23-11#b523cc942026-10-14
  • R24-11rel:R24-11#a52ebef82026-10-14
  • R25-11rel:R25-11#ed0aabbb2026-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