DEENESPTFRRUARHIKOZHNL

classe ara::core::CoreErrorDomain

[SWS_CORE_05221] Upstream: RS_AP_00130

class CoreErrorDomain final :             public ErrorDomain {...};

An error domain for errors originating from the ara::core Functional Cluster.

Header-Datei#include "ara/core/core_error_domain.h"
Forwarding-Header#include "ara/core/core_fwd.h"
Scopenamespace ara::core
Basisklasse(n)ErrorDomain
Unique IDAs per ara::core::CoreErrorDomain in [SWS_CORE_90023]

Guia do utilizadorGERADO POR IA

Gere os códigos de erro do cluster ara::core, traduz-os em mensagens de erro e lança as exceções correspondentes.
GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 8500dff6850e Procedência Perguntas em aberto (1)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

Gere os códigos de erro do cluster ara::core, traduz-os em mensagens de erro e lança as exceções correspondentes.

A classe ara::core::CoreErrorDomain representa o domínio de erro para erros do cluster funcional ara::core e mapeia códigos de erro numéricos para mensagens de texto descritivas [SWS_CORE_05243]. Além disso, através de ThrowAsException(), possibilita a conversão de códigos de erro em exceções CoreException específicas do tipo [SWS_CORE_05244]. Como todos os métodos de consulta são thread-safe e construtíveis como constexpr, o domínio é adequado para uma utilização eficiente a nível de todo o cluster. Se as exceções de C++ estiverem desativadas na toolchain, o método de exceção não participa na resolução de sobrecarga.

Contexto

A classe ara::core::CoreErrorDomain representa o domínio de erro específico para todos os estados de erro que têm origem no cluster funcional ara::core. É definida como uma especialização final de ErrorDomain, impedindo assim qualquer derivação posterior. A classe disponibiliza, através do método Name(), o nome curto exclusivo do domínio [SWS_CORE_05242]. Para uma integração consistente no modelo de tratamento de erros da AUTOSAR, CoreErrorDomain define aliases de tipo centrais: Errc referencia diretamente como alias a enumeração CoreErrc [SWS_CORE_05231], enquanto Exception constitui o alias para a classe de exceção base correspondente CoreException [SWS_CORE_05232]. Entre os parceiros de interação mais importantes encontram-se os encapsuladores genéricos de erro do tipo ErrorCode, que mantêm uma referência para o respetivo domínio de erro, bem como componentes executantes que diagnosticam ou tratam estados de erro.

Ciclo de vida

A criação de um CoreErrorDomain ocorre através do construtor predefinido sem parâmetros constexpr CoreErrorDomain() noexcept [SWS_CORE_05241]. Como o construtor está declarado como constexpr e noexcept, a instância pode ser criada logo no momento da compilação, sem sobrecarga de alocação ou risco de exceções.

Interpretação: Como os domínios de erro na norma AUTOSAR Adaptive são concebidos como stateless e disponibilizam exclusivamente metadados constantes e lógica de transformação, é provável que exista tipicamente uma instância singleton global ou estática no sistema, acedida a nível de todo o cluster. Pergunta Q-7b4761bf124c5755 (aberta) A instância permanece válida ao longo de todo o tempo de execução do processo. No que respeita à concorrência, as operações da classe são especificadas como thread-safe [SWS_CORE_05241], [SWS_CORE_05242], [SWS_CORE_05243], permitindo consultas simultâneas a partir de múltiplas threads paralelas sem medidas de sincronização adicionais.

Caminho de utilização

Durante o funcionamento contínuo, CoreErrorDomain é consultado sobretudo em dois cenários típicos pelo sistema de tempo de execução ou pelo código da aplicação: para a inspeção textual de erros e para o tratamento de exceções.

Caso ocorra um erro, é possível consultar a mensagem de texto correspondente através da função-membro Message(), passando o código de erro numérico [SWS_CORE_05243]. A especificação garante de forma vinculativa que esta função nunca retorna um ponteiro nulo (nullptr), de modo que o const char* retornado pode ser utilizado com segurança para saídas de diagnóstico ou registo em log. Se um erro não deva ser tratado como valor de retorno, mas propagado como exceção de C++, utiliza-se para o efeito o método ThrowAsException() [SWS_CORE_05244]. Este recebe uma instância de ErrorCode, instancia a CoreException correspondente e lança-a na pilha de chamadas atual.

Consulta de texto de erro e disparo de exceção via CoreErrorDomainAplicaçãoCoreErrorDomainCoreExceptionMessage(errorCode)Textmeldung (never nullptr)Use Case: AusnahmebehandlungoptC++ Exceptions aktiviertThrowAsException(errorCode)wirft CoreException(errorCode)

Diagrama de sequência: fluxo típico para a tradução de códigos de erro e disparo condicional de exceções. Fontes: [SWS_CORE_05243], [SWS_CORE_05244]

Cenários de erro

As funções Name() e Message(), bem como o construtor, estão declarados como noexcept e classificados como seguros para exceções [SWS_CORE_05241], [SWS_CORE_05242], [SWS_CORE_05243]. Não lançam exceções, mesmo sob condições de erro, nem geram códigos de erro próprios.

Em contrapartida, ThrowAsException() está explicitamente anotado com noexcept(false) e classificado como não seguro para exceções, uma vez que o lançamento determinístico de uma exceção (do tipo CoreException) representa a tarefa primária desta interface [SWS_CORE_05244]. Constitui uma pré-condição arquitetural central: caso as exceções de C++ estejam desativadas na toolchain utilizada ou nas configurações do compilador, esta função não deve participar na resolução de sobrecarga [SWS_CORE_05244]. Isto evita erros de compilação em ambientes de sistema que seguem a abordagem de sistemas embutidos tolerante a falhas sem tratamento de exceções de C++.

Este guia foi gerado por um sistema de IA com base na especificação R25-11.

Mapa de membros

Construtores e destrutor

1

Aliases de tipo

2

Diagrama de classes

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

G nara__core__CoreErrorDomain113 CoreErrorDomain + CoreErrorDomain() + Message() + Name() + ThrowAsException() nara__core__ErrorDomain335 ErrorDomain nara__core__CoreErrorDomain113->nara__core__ErrorDomain335

Vista de detalhes

Selecione uma entrada no índice.

Construtores e destrutor

Default constructor

constexpr CoreErrorDomain () noexcept;

Métodos

Message função

Translate an error code value into a text message

const char * Message (ErrorDomain::CodeType errorCode) const noexcept override;
Name função

Return the ApApplicationErrorDomain. shortName of this error domain

const char * Name () const noexcept override;

Throw the exception type corresponding to the given ErrorCode.

void ThrowAsException (const ErrorCode &errorCode) const noexcept(false) override;

Aliases de tipo

Errc alias de tipo

Alias for the error code value enumeration

using Errc = CoreErrc;
Exception alias de tipo

Alias for the exception base class

Documentação dos métodos

função CoreErrorDomain [SWS_CORE_05241] Upstream: RS_AP_00130

constexpr CoreErrorDomain () noexcept;

Default constructor

Header-Datei#include "ara/core/core_error_domain.h"
Scopeclass ara::core::CoreErrorDomain
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_05241
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_05241@rel:R25-11#7b6f5245
Content hash
7b6f5245
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_05241
Status: valid/unmigrated Version: rel:R25-11#3e485a80 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_05241@rel:R25-11#3e485a80
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#b295a3ea2026-09-30
  • R19-11rel:R19-11#070db4fd2026-10-14
  • R20-11rel:R20-11#fbd86c322026-10-14
  • R21-11rel:R21-11#f39944522026-10-14
  • R22-11rel:R22-11#326fb7c62026-10-14
  • R23-11rel:R23-11#5f0eb25d2026-10-14
  • R24-11rel:R24-11#3e485a802026-10-14
  • R25-11rel:R25-11#3e485a802026-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

função Message [SWS_CORE_05243] Upstream: RS_AP_00130

const char * Message (ErrorDomain::CodeType errorCode) const noexcept override;

Translate an error code value into a text message

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

Parameter (in)

ParameterBeschreibung
errorCodethe error code value

Rückgabewert

TypBeschreibung
const char *the text message, never nullptr

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

Record
AUTOSAR/AP/record/SWS_CORE_05243
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_05243@rel:R25-11#96afdaf4
Content hash
96afdaf4
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_05243
Status: valid/unmigrated Version: rel:R25-11#00427b91 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_05243@rel:R25-11#00427b91
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#09cacd332026-09-30
  • R19-11rel:R19-11#d12bc2432026-10-14
  • R20-11rel:R20-11#2b2da89e2026-10-14
  • R21-11rel:R21-11#2b2da89e2026-10-14
  • R22-11rel:R22-11#73527d722026-10-14
  • R23-11rel:R23-11#17fa2fc82026-10-14
  • R24-11rel:R24-11#00427b912026-10-14
  • R25-11rel:R25-11#00427b912026-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

função Name [SWS_CORE_05242] Upstream: RS_AP_00130

const char * Name () const noexcept override;

Return the ApApplicationErrorDomain. shortName of this error domain

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

Rückgabewert

TypBeschreibung
const char *As per ara::core::CoreErrorDomain in [SWS_CORE_90023]

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

Record
AUTOSAR/AP/record/SWS_CORE_05242
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_05242@rel:R25-11#b989d7e3
Content hash
b989d7e3
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_05242
Status: valid/unmigrated Version: rel:R25-11#1f57e0cc 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_05242@rel:R25-11#1f57e0cc
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#d99ba5832026-09-30
  • R19-11rel:R19-11#5d1f96f42026-10-14
  • R20-11rel:R20-11#4467617d2026-10-14
  • R21-11rel:R21-11#4467617d2026-10-14
  • R22-11rel:R22-11#11fc29042026-10-14
  • R23-11rel:R23-11#a9c4ef8a2026-10-14
  • R24-11rel:R24-11#347b7dd02026-10-14
  • R25-11rel:R25-11#1f57e0cc2026-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

função ThrowAsException [SWS_CORE_05244] Upstream: RS_AP_00130

void ThrowAsException (const ErrorCode &errorCode) const noexcept(false) override;

Throw the exception type corresponding to the given ErrorCode.

GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: c5a4846a6615 Procedência
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

A função-membro ThrowAsException da classe ara::core::CoreErrorDomain (definida no cabeçalho ara/core/core_error_domain.h) destina-se ao lançamento síncrono de uma exceção C++ com base em um código de erro [SWS_CORE_05244] passado. Como parâmetro, a função recebe uma referência a uma instância constante de ErrorCode (const ErrorCode &errorCode) [SWS_CORE_05244]. O método não possui valor de retorno; em vez disso, lança imediatamente uma exceção do tipo CoreException, que encapsula completamente o objeto ErrorCode passado [SWS_CORE_05244].

Em relação ao contexto de execução, concorrência e condições do compilador, aplicam-se as seguintes diretrizes:

  • Segurança de threads: a função está especificada como segura para threads (thread-safe) e, portanto, pode ser chamada com segurança a partir de contextos concorrentes [SWS_CORE_05244].
  • Segurança de exceções: o comportamento está formalmente classificado como não seguro contra exceções (not exception safe), visto que a função está declarada com noexcept(false) e lança intencionalmente uma exceção [SWS_CORE_05244].
  • Restrição do compilador: se as exceções C++ estiverem desativadas na cadeia de ferramentas do compilador, o método não pode participar da resolução de sobrecarga conforme [SWS_CORE_10304] [SWS_CORE_05244].

Na estrutura da arquitetura, o método sobrescreve (override) a função-base puramente virtual ThrowAsException da classe abstrata ara::core::ErrorDomain [SWS_CORE_00154]. Na aplicação típica, a função não é chamada diretamente no objeto de domínio, mas sim acionada por meio do método auxiliar ErrorCode::ThrowAsException(), que encaminha a chamada dinamicamente através de this->Domain().ThrowAsException(*this) para o domínio de erro responsável [SWS_CORE_00519].

Esta nota de uso foi gerada por uma IA com base na especificação AUTOSAR Adaptive R25-11.

Guia do implementador em breve (complexidade I1)

Header-Datei#include "ara/core/core_error_domain.h"
Scopeclass ara::core::CoreErrorDomain
Exception-Sicherheitnot exception safe
Thread-Sicherheitthread-safe

Parameter (in)

ParameterBeschreibung
errorCodethe ErrorCode instance

Rückgabewert

TypBeschreibung
None

Exceptions

CoreException an exception containing the given ErrorCode

Hinweise: This function shall not participate in overload resolution when C++ exceptions are disabled in the compiler toolchain. As per [SWS_CORE_10304]

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

Record
AUTOSAR/AP/record/SWS_CORE_05244
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_05244@rel:R25-11#18a26544
Content hash
18a26544
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_05244
Status: valid/unmigrated Version: rel:R25-11#76549789 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_05244@rel:R25-11#76549789
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#8be3b2f52026-09-30
  • R19-11rel:R19-11#98ba1eda2026-10-14
  • R20-11rel:R20-11#1103982a2026-10-14
  • R21-11rel:R21-11#52e0dd5c2026-10-14
  • R22-11rel:R22-11#5de8a1b22026-10-14
  • R23-11rel:R23-11#27770af82026-10-14
  • R24-11rel:R24-11#0c81b1e92026-10-14
  • R25-11rel:R25-11#765497892026-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

Documentação dos aliases de tipo

alias de tipo Errc [SWS_CORE_05231] Upstream: RS_AP_00130

using Errc = CoreErrc;

Alias for the error code value enumeration

Header-Datei#include "ara/core/core_error_domain.h"
Scopeclass ara::core::CoreErrorDomain
SymbolErrc

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

Record
AUTOSAR/AP/record/SWS_CORE_05231
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_05231@rel:R25-11#8bec38d8
Content hash
8bec38d8
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_05231
Status: valid/unmigrated Version: rel:R25-11#c33560a7 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_05231@rel:R25-11#c33560a7
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#634f14922026-09-30
  • R19-11rel:R19-11#37c73a1f2026-10-14
  • R20-11rel:R20-11#a73623902026-10-14
  • R21-11rel:R21-11#a73623902026-10-14
  • R22-11rel:R22-11#5b6e63892026-10-14
  • R23-11rel:R23-11#f478ff612026-10-14
  • R24-11rel:R24-11#c33560a72026-10-14
  • R25-11rel:R25-11#c33560a72026-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

alias de tipo Exception [SWS_CORE_05232] Upstream: RS_AP_00130

using Exception = CoreException;

Alias for the exception base class

Header-Datei#include "ara/core/core_error_domain.h"
Scopeclass ara::core::CoreErrorDomain
SymbolException

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

Record
AUTOSAR/AP/record/SWS_CORE_05232
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_CORE_05232@rel:R25-11#6935f863
Content hash
6935f863
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_05232
Status: valid/unmigrated Version: rel:R25-11#5d1bfae3 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_05232@rel:R25-11#5d1bfae3
Point-in-Time History:
Recorded Revisions (8):
  • R25-11rel:R25-11#9c108ed52026-09-30
  • R19-11rel:R19-11#d33d63502026-10-14
  • R20-11rel:R20-11#907e01392026-10-14
  • R21-11rel:R21-11#907e01392026-10-14
  • R22-11rel:R22-11#3eaa58ca2026-10-14
  • R23-11rel:R23-11#bdda71cf2026-10-14
  • R24-11rel:R24-11#5d1bfae32026-10-14
  • R25-11rel:R25-11#5d1bfae32026-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