Fornece uma abstração de campo de bits de tamanho fixo em conformidade com as normas e segura quanto aos tipos, com garantias noexcept para o Adaptive Core.
GERADO POR IAnão revisadoModelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: ae7240ca6617ProcedênciaPerguntas em aberto (1)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão
Fornece uma abstração de campo de bits de tamanho fixo em conformidade com as normas e segura quanto aos tipos, com garantias noexcept para o Adaptive Core.
O template de classe ara::core::Bitset disponibiliza uma implementação de std::bitset adaptada ao AUTOSAR Adaptive para sequências de bits de tamanho fixo [SWS_CORE_01741]. Oferece operações abrangentes para manipulação de bits, operações lógicas e conversões otimizadas em tipos inteiros escalares com garantias noexcept estritas [SWS_CORE_01738]. Modificações baseadas em posição reportam índices inválidos através de ara::core::Result em vez de exceções C++, enquanto as conversões tratam erros de overflow de forma determinística. Deste modo, a classe é particularmente adequada para funções de unidades de comando eficientes em termos de recursos e tolerantes a falhas.
Contexto
A classe template ara::core::Bitset disponibiliza, no âmbito da Adaptive Platform, uma implementação do tipo padrão C++ std::bitset para sequências de bits com comprimento N definido em tempo de compilação [SWS_CORE_01741]. No ecossistema AUTOSAR, a classe serve para a manipulação eficiente e segura quanto aos tipos de campos de bits, máscaras de estado e registos de flags em unidades de comando. Integra-se perfeitamente no sistema de tipos do módulo core ao suportar o tipo específico da plataforma ara::core::BasicString em vez de std::basic_string[SWS_CORE_01749], [SWS_CORE_01751]. Além disso, o AUTOSAR estende a interface normalizada com funções de conversão dedicadas para tipos inteiros de largura fixa sem sinal, tais como std::uint8_t, std::uint16_t, std::uint32_t e std::uint64_t[SWS_CORE_01736], [SWS_CORE_01737], [SWS_CORE_01738], [SWS_CORE_01739].
Ciclo de vida
A criação de uma instância ocorre de forma flexível através de múltiplos construtores. O construtor padrão inicializa todos os N bits como valores zero e está declarado como constexpr, bem como noexcept[SWS_CORE_01713]. Em alternativa, um bitset pode ser instanciado a partir de um valor escalar do tipo unsigned long long[SWS_CORE_01719] ou com base em texto a partir de ara::core::BasicString[SWS_CORE_01749] ou de um ponteiro para cadeia de caracteres terminada em nulo const CharT*[SWS_CORE_01750]. O construtor de cópia e o de movimento estão presentes e definidos como noexcept=default[SWS_CORE_01714], [SWS_CORE_01716]. Do mesmo modo, são disponibilizados os respetivos operadores de atribuição [SWS_CORE_01715], [SWS_CORE_01717]. O destruidor está especificado como noexcept e thread-safe [SWS_CORE_01718]. No que diz respeito à concorrência, as funções de conversão de inteiros também são thread-safe [SWS_CORE_01736], [SWS_CORE_01737], ao passo que os acessos modificadores à mesma instância de bitset devem ser sincronizados.
Caminho de utilização
Um caminho de utilização típico compreende a instanciação, a subsequente manipulação de bits individuais ou máscaras de bits, bem como a avaliação ou conversão final do campo de bits:
Criação: O bitset é tipicamente criado com um valor inicial [SWS_CORE_01719] ou inicializado através do construtor padrão [SWS_CORE_01713].
Conversão: Para processamento posterior, o conteúdo do campo de bits pode ser convertido em tipos numéricos de largura fixa, por exemplo através de to_uint32t[SWS_CORE_01738], ou exportado como cadeia de caracteres através de to_string[SWS_CORE_01751].
Ao contrário de std::bitset, ara::core::Bitset utiliza um conceito de tratamento de erros determinístico e tolerante a falhas sem exceções (noexcept):
Ultrapassagem de limites em acessos por posição: Nas funções de manipulação set(pos)[SWS_CORE_01726], reset(pos)[SWS_CORE_01728] e flip(pos)[SWS_CORE_01731] é utilizado o tipo de retorno Result<Bitset<N>&>. Se pos estiver fora do intervalo válido, é reportado IsoStdOutOfRangeViolation em vez de std::out_of_range. Interpretação: a utilização consistente de ara::core::Result e noexcept destina-se provavelmente ao cumprimento dos rigorosos requisitos de ausência de exceções em áreas críticas para a segurança da Adaptive Platform. Pergunta Q-322c53fff705bce6 (aberta) A função de verificação test(pos) também aponta para IsoStdOutOfRangeViolation em caso de pos inválido [SWS_CORE_01743].
Cadeias de caracteres inválidas: Na construção a partir de ara::core::BasicString[SWS_CORE_01749], é acionado IsoStdOutOfRangeViolation em pos > size() e IsoStdInvalidArgumentViolation (em vez de std::invalid_argument) no caso de caracteres diferentes de 0 ou 1.
Segurança restrita contra exceções: Enquanto a maioria das operações é noexcept e segura contra exceções, a construção a partir de ponteiros const CharT*[SWS_CORE_01750], bem como a exportação através de to_string[SWS_CORE_01751], estão expressamente classificadas como não seguras contra exceções (not exception safe).
Este guia de classe baseia-se na especificação AUTOSAR Adaptive Release R25-11 e foi criado automaticamente.
except for the following deviations: 1. The function is noexcept 2. If pos does not correspond to a valid bit position, IsoStdOutOfRangeViolation is raised instead of std::out_of_range ≙ std::out_of_range
[AUTOSAR defined] not present in ISO-14882. Alias for ara::core::Bitset::to_ulong but explicitly using the std::uint32_t type from [SWS_APT_00028] ≙ std::uint32_t
[AUTOSAR defined] not present in ISO-14882. Alias for ara::core::Bitset::to_ullong but explicitly using the std::uint64_t type from [SWS_APT_00031] ≙ std::uint64_t
except for the following deviations: 1. Function is constexpr 2. The function is noexcept 3. If the integral value x corresponding to the bits in the bitset cannot be represented as the return type, IsoStdOverflowErrorViolation is raised instead of std:: overflow_error ≙ [bitset]
constexpr unsigned long long to_ullong () const noexcept;
except for the following deviations: 1. Function is constexpr 2. The function is noexcept 3. If the integral value x corresponding to the bits in the bitset cannot be represented as the return type, IsoStdOverflowErrorViolation is raised instead of std:: overflow_error ≙ [bitset]
constexpr unsigned long to_ulong () const noexcept;
As per corresponding usage in [bitset] except for the following deviations: 1. The function is noexcept 2. If (pos > size()), IsoStdOutOfRangeViolation is raised instead of std:: out_of_range 3. If any character is not 1 or 0, IsoStdInvalidArgumentViolation is raised instead of std::invalid_argument 4. Function arguments have been adapted to conform to ara::core::BasicString constructor parameters
As per corresponding usage in [bitset] except for the following deviations: 1. Function arguments have been adapted to conform to ara::core::BasicString constructor parameters
GERADO POR IAnão revisadoModelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 68eb943f5f65ProcedênciaPerguntas em aberto (2)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão
A função-membro [SWS_CORE_01744] pertence à classe ara::core::Bitset e é disponibilizada por meio do arquivo de cabeçalho #include "ara/core/bitset.h". A função possui a assinatura bool all () const noexcept;, não recebe parâmetros e retorna de forma síncrona um valor booleano. Segundo a especificação, a semântica é baseada no uso correspondente em [bitset]; interpretação: o método presumivelmente verifica se todos os bits da instância estão definidos (possuem o valor true). Pergunta Q-a4f0f8970bd2c9bb (aberta)
No que concerne ao tratamento de erros, a função é declarada como noexcept e especificada como segura para exceções (exception safe) [SWS_CORE_01744]. Como nenhum estado de erro é reportado e a execução decorre garantidamente sem falhas, códigos de erro de ara::core::CoreErrc não encontram aplicação aqui.
Para o contexto de chamada e a concorrência, aplicam-se as seguintes condições de contorno:
A operação é declarada como const e não modifica o estado do objeto ara::core::Bitset chamador [SWS_CORE_01744].
Acessos de leitura simultâneos por meio de múltiplas threads devem ser permitidos sem sincronização, desde que nenhuma outra thread altere a mesma área de memória com escrita. Pergunta Q-d9f1f92a120128b5 (aberta)
Este conteúdo foi gerado por uma IA com base na especificação AUTOSAR R25-11.
GERADO POR IAnão revisadoModelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 7dc0cee01033ProcedênciaPerguntas em aberto (2)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão
A função-membro any() de ara::core::Bitset serve para a consulta síncrona do estado de ocupação dos bits gerenciados no bitset [SWS_CORE_01745]. Segundo a especificação, o comportamento orienta-se pelo uso correspondente do template de classe ISO-C++ [bitset][SWS_CORE_01745]. Interpretação: a função retorna true caso ao menos um bit esteja definido, e false se todos os bits estiverem desmarcados. Pergunta Q-20c2aaf905d4a338 (aberta)
No que tange ao uso, contexto de execução e comportamento em caso de falha, aplicam-se as seguintes definições:
Chamada e parâmetros: o método é chamado sem parâmetros em uma instância existente, inicializada previamente, por exemplo, por meio do construtor [SWS_CORE_01749]. A chamada ocorre de forma síncrona e retorna o resultado da verificação diretamente como bool[SWS_CORE_01745].
Tratamento de erros: a função é declarada como noexcept e classificada como segura para exceções (exception safe) [SWS_CORE_01745]. Não são gerados códigos de erro nem mensagens de DET/DEM; uma falha da operação não está prevista no padrão AUTOSAR.
Concorrência: devido à qualificação const, o método não modifica a instância [SWS_CORE_01745]. Presumivelmente, acessos de leitura paralelos à mesma instância são seguros, enquanto acessos de escrita concorrentes devem ser sincronizados pelo chamador. Pergunta Q-34893675aa85baf1 (aberta)
No contexto de módulo de core, any() disponibiliza uma função básica de inspeção para bitsets, que interage perfeitamente com os mecanismos de inicialização e armazenamento de ara::core::Bitset[SWS_CORE_01745], [SWS_CORE_01749].
Esta nota de utilização foi gerada automaticamente com base na especificação da AUTOSAR Adaptive R25-11.
GERADO POR IAnão revisadoModelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 4dcb196eeab8ProcedênciaPerguntas em aberto (2)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão
Utilização e semântica
A função-membro count é chamada de forma síncrona e sem parâmetros em uma instância de ara::core::Bitset ([SWS_CORE_01740]). Ela é declarada no cabeçalho #include "ara/core/bitset.h" e fornece o resultado da contagem como valor de retorno do tipo std::size_t ([SWS_CORE_01740]). O comportamento funcional orienta-se pela referência [bitset] ([SWS_CORE_01740]); o valor deve, portanto, corresponder ao número total de bits definidos. Pergunta Q-36c593b234f55695 (aberta)
Tratamento de erros e simultaneidade
A função é especificada como noexcept e considerada exception safe ([SWS_CORE_01740]). Não são disparadas exceções nem retornados códigos de erro, e mensagens para DET ou DEM não estão previstas para este elemento. Como count é declarada como função-membro constante (const) ([SWS_CORE_01740]), a chamada não modifica o estado do objeto. Acessos de leitura paralelos à mesma instância devem, portanto, ser executáveis concorrentemente, desde que não ocorram acessos concorrentes de escrita. Pergunta Q-073bc3bbcb918763 (aberta)
Interação e distinção
No espaço de nomes ara::core, a função deve ser claramente separada de outros elementos:
Em ara::core::Map, count serve para determinar chaves existentes ([SWS_CORE_01494], [SWS_CORE_01495]), sendo, porém, classificado como not exception safe.
GERADO POR IAnão revisadoModelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 3295cd6e5b84ProcedênciaPerguntas em aberto (1)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão
usar
A função-membro flip() da classe ara::core::Bitset inverte sincronamente o estado de todos os bits da instância de acordo com o comportamento de [bitset][SWS_CORE_01730]. A função é disponibilizada através do cabeçalho #include "ara/core/bitset.h", não recebe parâmetros e retorna uma referência lvalue para o objeto modificado (Bitset<N>&), o que permite o encadeamento de operações [SWS_CORE_01730].
Tratamento de erros e segurança de exceções
A função é declarada como noexcept e especificada como segura contra exceções («exception safe») [SWS_CORE_01730]. Não são lançadas C++ exceptions nem são retornados códigos de erro; portanto, a execução deverá ocorrer sempre sem erros. Pergunta Q-df762b6329a2c0d4 (aberta)
Interação
O módulo core define variantes relacionadas para manipulação de bits:
O método sobrecarregado flip(std::size_t pos) serve para a inversão orientada de um único bit no índice pos[SWS_CORE_01731]. Diferentemente da forma sem parâmetros, ele retorna um Result<Bitset<N>&> e sinaliza posições inválidas através de IsoStdOutOfRangeViolation[SWS_CORE_01731].
Através da classe de referência ara::core::Bitset<N>::reference, a função-membro flip() está disponível para inverter um único bit referenciado e retornar uma reference&[SWS_CORE_01712].
Esta nota de utilização foi criada automaticamente e baseia-se exclusivamente na especificação da AUTOSAR Adaptive R25-11.
As per corresponding usage in [bitset] except for the following deviations: 1. The function is noexcept 2. If pos does not correspond to a valid bit position, IsoStdOutOfRangeViolation is raised instead of std::out_of_range
GERADO POR IAnão revisadoModelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: cc8134eb8cb3ProcedênciaPerguntas em aberto (1)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão
A função-membro flip da classe ara::core::Bitset inverte sincronamente o estado do bit na posição passada pos[SWS_CORE_01731]. Ela é definida no cabeçalho #include "ara/core/bitset.h" e orienta-se pelo comportamento de std::bitset::flip, mas apresenta divergências funcionais específicas [SWS_CORE_01731].
A função é declarada como noexcept bem como exception safe e retorna, em caso de sucesso, uma referência ao bitset modificado dentro de um Result<Bitset<N>&>[SWS_CORE_01731]. Se o parâmetro pos não corresponder a uma posição de bit válida, em vez de uma C++ exception como std::out_of_range, é acionada a violação IsoStdOutOfRangeViolation[SWS_CORE_01731].
No que diz respeito à simultaneidade, assume-se que chamadas simultâneas na mesma instância de bitset não são thread-safe devido à falta de sincronização documentada e devem ser coordenadas externamente. Pergunta Q-de73bb65d6aab12c (aberta)
No módulo core, a função complementa outras operações relacionadas: Para a inversão síncrona de todos os bits de uma instância, está disponível a sobrecarga sem parâmetros flip()[SWS_CORE_01730], enquanto para objetos de referência de bit está disponível o método ara::core::Bitset::reference::flip()[SWS_CORE_01712].
Esta nota de utilização foi criada automaticamente com base na release R25-11 da AUTOSAR Adaptive.
GERADO POR IAnão revisadoModelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 08d4a9889ec9ProcedênciaPerguntas em aberto (2)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão
usar
A função-membro none da classe ara::core::Bitset serve para consultar o estado de ocupação da sequência de bits [SWS_CORE_01746]. O método requer a inclusão do cabeçalho ara/core/bitset.h e possui a assinatura bool none () const noexcept;[SWS_CORE_01746]. A chamada ocorre de forma síncrona e sem parâmetros em uma instância existente. A especificação remete, em relação ao comportamento, ao uso correspondente em [bitset][SWS_CORE_01746]; interpretação: o método deve retornar true se e somente se nenhum bit estiver definido na sequência de bits (ou seja, todos os bits forem false), caso contrário false. Pergunta Q-de8593251c7748d5 (aberta)
Tratamento de erros e segurança de exceções
Para none não estão definidos códigos de erro nem estados de erro especiais. De acordo com a especificação, a função é declarada como noexcept e possui a classificação segura para exceções (exception safe) [SWS_CORE_01746]. Em caso de falha ou durante a execução, portanto, não ocorrem exceções C++.
Simultaneidade e restrições
Como none é declarada como const[SWS_CORE_01746], a chamada do método não modifica o estado interno do objeto. Chamadas de leitura paralelas no mesmo objeto Bitset devem, portanto, ser seguras sob concorrência e reentrantes, desde que não ocorram modificações de escrita concorrentes na mesma instância. Pergunta Q-cf92e9abf57e9678 (aberta)
Esta nota de uso foi gerada automaticamente por um assistente de IA e baseia-se nos requisitos da especificação.
GERADO POR IAnão revisadoModelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 0868e1227ad2ProcedênciaPerguntas em aberto (1)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão
A função-membro reset() redefine, de acordo com a especificação [SWS_CORE_01727], o estado de uma instância de ara::core::Bitset. A função é disponibilizada através do ficheiro de cabeçalho #include "ara/core/bitset.h" e possui a assinatura Bitset<N>& reset() noexcept;.
Utilização e semântica
A função não recebe parâmetros e opera sincronamente sobre o objeto chamador. Através da referência especificada para a utilização habitual em [bitset], a chamada deverá redefinir todos os bits contidos para false (ou 0) e retornar uma referência à própria instância de bitset (*this), o que permite o encadeamento de métodos. Pergunta Q-89116316a65e0772 (aberta)
Tratamento de erros e segurança contra exceções
De acordo com [SWS_CORE_01727], a função é declarada como noexcept e possui a classificação “exception safe”. Como, ao contrário da sobrecarga parametrizada, não é necessária nenhuma verificação de índice, na variante sem parâmetros não ocorrem estados de erro nem códigos de erro.
Interação e distinção
No mesmo âmbito ara::core::Bitset existe a sobrecarga reset(std::size_t pos) de acordo com [SWS_CORE_01728]. Esta redefine pontualmente um único bit, mas retorna um Result<Bitset<N>&> e reporta uma IsoStdOutOfRangeViolation caso pos seja inválido.
Existem funções com o mesmo nome no módulo core também para ara::core::Optional de acordo com [SWS_CORE_01136] e ara::core::Optional<T&> de acordo com [SWS_CORE_01165] de #include "ara/core/optional.h", as quais descartam o valor contido e apresentam o tipo de retorno void.
Este texto foi gerado por uma IA e serve como orientação. Apenas as especificações da norma AUTOSAR são vinculativas.
As per corresponding usage in [bitset] except for the following deviations: 1. The function is noexcept 2. If pos does not correspond to a valid bit position, IsoStdOutOfRangeViolation is raised instead of std::out_of_range
GERADO POR IAnão revisadoModelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 6ee8bcd28b61ProcedênciaPerguntas em aberto (1)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão
A função-membro reset da classe ara::core::Bitset redefine um único bit na posição especificada pos sincronamente para o valor 0 [SWS_CORE_01728]. A função segue o comportamento de std::bitset, apresentando contudo dois desvios essenciais: é declarada como noexcept e retorna o resultado num Result<Bitset<N>&> para mapear situações de erro sem exceções C++ [SWS_CORE_01728].
Tratamento de erros
Caso o índice passado pos não corresponda a nenhuma posição de bit válida dentro do bitset, é desencadeada a violação IsoStdOutOfRangeViolation em vez de std::out_of_range[SWS_CORE_01728]. Em caso de erro, esta é disponibilizada como estado de erro no objeto Result retornado, de modo a que a operação permaneça segura contra exceções apesar do valor de parâmetro inválido [SWS_CORE_01728].
Interação e distinção
No módulo core, existe para ara::core::Bitset adicionalmente a sobrecarga sem parâmetros reset(), que limpa todos os bits do contentor de uma só vez e retorna diretamente uma referência ao objeto [SWS_CORE_01727]. Além disso, os requisitos relacionados [SWS_CORE_01136] e [SWS_CORE_01165] definem um método com o mesmo nome para ara::core::Optional, o qual descarta aí o valor contido.
simultaneidade
Uma vez que reset altera o estado interno do bitset, uma chamada concorrente sobre a mesma instância sem sincronização externa não deverá ser segura para threads (Interpretação: adoção da semântica habitual de contentores C++). Pergunta Q-e2e1c041eadedf0f (aberta)
Este texto foi gerado por uma IA com base na especificação AUTOSAR R25-11.
GERADO POR IAnão revisadoModelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 69ac29c94b17ProcedênciaPerguntas em aberto (1)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão
A função-membro síncrona set() da classe ara::core::Bitset define todos os bits contidos no objeto com o valor true ([SWS_CORE_01725]). Ela corresponde, em termos de comportamento, ao funcionamento de std::bitset do padrão ISO C++ e está disponível através do cabeçalho ara/core/bitset.h ([SWS_CORE_01725]). A chamada do método ocorre sem parâmetros e retorna uma referência lvalue para o bitset modificado (Bitset<N>&) ([SWS_CORE_01725]), o que permite o encadeamento direto de outras chamadas na mesma instância.
A operação está declarada como noexcept e possui a propriedade exception safe ([SWS_CORE_01725]). Como ela itera por todos os bits ou define o estado geral, não ocorrem erros de intervalo, ao contrário de acessos baseados em posição. A especificação não faz declarações sobre a segurança para threads; Interpretação: Como o estado do objeto é diretamente alterado, acessos paralelos à mesma instância de Bitset sem proteção externa provavelmente não são seguros quanto à concorrência ou a threads. Pergunta Q-f8c1b5721f668193 (aberta)
Na interação dentro do módulo core, a função complementa a variante sobrecarregada set(std::size_t, bool) ([SWS_CORE_01726]). Enquanto a versão sem parâmetros preenche garantidamente com sucesso todo o campo, a versão parametrizada modifica pontualmente um único bit, fornece o tipo Result<Bitset<N>&> e sinaliza através de uma IsoStdOutOfRangeViolation caso seja passado um índice de posição inválido ([SWS_CORE_01726]).
Esta nota de uso baseia-se na especificação do AUTOSAR Adaptive para a release R25-11 e foi criada de forma automatizada.
As per corresponding usage in [bitset] except for the following deviations: 1. The function is noexcept 2. If pos does not correspond to a valid bit position, IsoStdOutOfRangeViolation is raised instead of std::out_of_range
GERADO POR IAnão revisadoModelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 78b604750828Procedência
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão
A função-membro set da classe ara::core::Bitset modifica o bit na posição indicada pos para o valor val de acordo com [SWS_CORE_01726]. A função está declarada no cabeçalho #include "ara/core/bitset.h" e opera de forma síncrona, bem como segura contra exceções.
Em comparação com o comportamento padrão de std::bitset, a função apresenta duas divergências essenciais ([SWS_CORE_01726]):
A função está declarada como noexcept e não lança exceções C++.
Se pos não corresponder a uma posição de bit válida, IsoStdOutOfRangeViolation é disparado em vez de std::out_of_range.
Como valor de retorno, é fornecido um Result<Bitset<N>&> ([SWS_CORE_01726]). Em caso de sucesso, o Result contém uma referência ao objeto bitset modificado. Se pos estiver fora do intervalo válido, o Result transporta a respectiva violação de erro.
Diferentemente da variante sem parâmetros set() ([SWS_CORE_01725]), que define todos os bits e retorna diretamente Bitset<N>&, esta sobrecarga baseada em posição requer a avaliação do objeto Result para o tratamento de erros de intervalo ([SWS_CORE_01726]).
Esta nota de utilização foi gerada automaticamente com base na especificação AUTOSAR R25-11.
As per corresponding usage in [bitset] except for the following deviations: 1. The function is noexcept 2. If pos does not correspond to a valid bit position, IsoStdOutOfRangeViolation is raised instead of std::out_of_range
GERADO POR IAnão revisadoModelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: d1ea13b75993ProcedênciaPerguntas em aberto (2)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão
usar
A função-membro síncrona test da classe ara::core::Bitset verifica o estado do bit na posição passada pos de acordo com [SWS_CORE_01743]. Como parâmetro de chamada, é passada a posição de bit desejada pos do tipo std::size_t. A função retorna de forma síncrona um valor do tipo bool, onde true indica que o bit está definido e false que não está definido. Para a inclusão e o uso da função no módulo Core da plataforma Adaptive, o cabeçalho ara/core/bitset.h deve ser incluído [SWS_CORE_01743].
Tratamento de erros e desvios
O comportamento funcional segue basicamente a semântica de std::bitset, apresentando, contudo, dois desvios essenciais específicos do sistema [SWS_CORE_01743]:
A assinatura é declarada como noexcept e garante segurança completa de exceção (exception safe) [SWS_CORE_01743].
Se a posição de bit pos não corresponder a nenhuma posição de bit válida dentro do objeto, é disparada a violação IsoStdOutOfRangeViolation em vez de uma exceção do tipo std::out_of_range[SWS_CORE_01743]. A descrição desta orienta-se pela de std::out_of_range[SWS_CORE_01743].
Simultaneidade e restrições
Como a função está especificada como const, ela não modifica a instância. Múltiplos acessos de leitura concorrentes à mesma instância de bitset devem, portanto, ser executáveis sem conflitos de dados em operação regular (interpretação). Pergunta Q-585dbdfefac63391 (aberta) Caso ocorram modificações de escrita simultâneas na mesma instância, presume-se necessária uma sincronização externa por parte do chamador.
Este texto foi gerado por uma IA com base na especificação AUTOSAR R25-11.
As per corresponding usage in [bitset] except for the following deviations: 1. Template arguments have been adapted to ara::core::BasicString in place of std:: basic_string
[AUTOSAR defined] not present in ISO-14882. Converts the contents of the bitset to a std:: uint16_t from [SWS_APT_00025]
GERADO POR IAnão revisadoModelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 6284644210b2ProcedênciaPerguntas em aberto (1)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão
A função-membro to_uint16t da classe ara::core::Bitset converte o conteúdo do bitset em um valor inteiro do tipo std::uint16_t ([SWS_CORE_01737], [SWS_APT_00025]). Ela representa uma extensão específica do AUTOSAR e não está contida no padrão ISO-C++ ISO-14882 ([SWS_CORE_01737]). A chamada síncrona é disponibilizada por meio do cabeçalho ara/core/bitset.h ([SWS_CORE_01737]).
No valor de retorno gerado, o primeiro bit do bitset corresponde ao bit menos significativo (least significant bit) e o último bit ao bit mais significativo (most significant bit) do número ([SWS_CORE_01737]). Como o método está especificado como constexpr, ele também pode ser avaliado em tempo de compilação em instâncias constantes ([SWS_CORE_01737]).
A operação é especificada como thread-safe bem como exception safe ([SWS_CORE_01737]). Caso o valor do bit não possa ser representado na faixa de valores de std::uint16_t, ocorre uma IsoStdOverflowErrorViolation ([SWS_CORE_01737]). Interpretação: devido à declaração noexcept, essa violação não deve ser reportada por meio de exceções C++ regulares, mas levar a tratamento por meio de mecanismos específicos da plataforma para violações. Pergunta Q-785057e36fb7e434 (aberta)
Esta nota de uso foi gerada automaticamente e baseia-se na especificação AUTOSAR R25-11.
IsoStdOverflowEr- If the integral value x corresponding to the bits in the bitset cannot rorViolation be represented as the return type
Rückgabewert
Typ
Beschreibung
std::uint16_t
The bits in the bitset, whereby the first bit of the bitset corresponds to the least significant bit of the returned number and the last bit corresponds to the most significant bit
Request a governed re-review of this record. The record is not changed immediately.
GERADO POR IAnão revisadoModelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: a8e87f48809eProcedência
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão
Utilização e semântica
O método to_uint32t é uma função-membro síncrona sem parâmetros da classe ara::core::Bitset, disponibilizada através do cabeçalho ara/core/bitset.h[SWS_CORE_01738]. Ele converte os bits da instância de bitset em um valor inteiro de 32 bits sem sinal do tipo std::uint32_t[SWS_CORE_01738]. A função não está incluída na ISO-14882, sendo definida como um alias específico da AUTOSAR para ara::core::Bitset::to_ulong, que utiliza explicitamente o tipo de dados std::uint32_t de [SWS_APT_00028][SWS_CORE_01738]. No mapeamento da sequência de bits, o primeiro bit do bitset corresponde ao bit menos significativo (least significant bit) do valor de retorno e o último bit ao bit mais significativo (most significant bit) [SWS_CORE_01738].
Tratamento de erros e condições de contorno
Para o caso de erro, a especificação define a violação IsoStdOverflowErrorViolation, que ocorre quando o valor inteiro correspondente aos bits definidos não pode ser representado no intervalo de valores do tipo de retorno [SWS_CORE_01738].
Concorrência e contexto de execução
A função está declarada com constexpr e noexcept[SWS_CORE_01738]. Em relação à segurança de execução, ela está especificada como segura para threads (thread-safe), bem como segura contra exceções (exception safe) [SWS_CORE_01738].
Esta nota de utilização foi gerada automaticamente com base na especificação.
IsoStdOverflowEr- If the integral value x corresponding to the bits in the bitset cannot rorViolation be represented as the return type
Rückgabewert
Typ
Beschreibung
std::uint32_t
The bits in the bitset, whereby the first bit of the bitset corresponds to the least significant bit of the returned number and the last bit corresponds to the most significant bit
Request a governed re-review of this record. The record is not changed immediately.
GERADO POR IAnão revisadoModelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 305531790779Procedência
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão
usar
A função-membro to_uint64t da classe ara::core::Bitset converte os bits contidos no bitset sincronamente em um valor inteiro do tipo std::uint64_t ([SWS_CORE_01739]). A operação é uma extensão específica da AUTOSAR e não está definida na ISO-14882 ([SWS_CORE_01739]). Ela atua como um alias para o método ara::core::Bitset::to_ullong, utilizando contudo de forma obrigatória e explícita o tipo std::uint64_t conforme [SWS_APT_00031] ([SWS_CORE_01739]). A declaração é fornecida através do arquivo de cabeçalho #include "ara/core/bitset.h" ([SWS_CORE_01739]).
Para o mapeamento bit a bit do valor de retorno, aplica-se que o primeiro bit do bitset corresponde ao bit menos significativo (least significant bit) do valor gerado e o último bit é atribuído ao bit mais significativo (most significant bit) ([SWS_CORE_01739]). Graças à qualificação como constexpr, a avaliação pode ocorrer tanto em tempo de execução quanto em tempo de compilação em expressões constantes ([SWS_CORE_01739]).
Tratamento de erros e simultaneidade
Em relação à segurança de execução, a função está declarada com noexcept, classificada como segura contra exceções (exception safe) e pode ser chamada irrestritamente de forma segura para threads (thread-safe) ([SWS_CORE_01739]). Se o valor inteiro correspondente aos bits não puder ser representado no tipo de destino, ocorre o caso de erro IsoStdOverflowErrorViolation ([SWS_CORE_01739]). A interface atende ao requisito superior [RS_AP_00130].
Esta nota de uso foi gerada automaticamente com base na especificação AUTOSAR.
IsoStdOverflowEr- If the integral value x corresponding to the bits in the bitset cannot rorViolation be represented as the return type
Rückgabewert
Typ
Beschreibung
std::uint64_t
The bits in the bitset, whereby the first bit of the bitset corresponds to the least significant bit of the returned number and the last bit corresponds to the most significant bit
Request a governed re-review of this record. The record is not changed immediately.
[AUTOSAR defined] not present in ISO-14882. Converts the contents of the bitset to a std:: uint8_t from [SWS_APT_00022]
GERADO POR IAnão revisadoModelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 9502dfbaed0eProcedência
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão
usar
A função-membro to_uint8t da classe ara::core::Bitset converte o conteúdo armazenado do bitset de forma síncrona em um valor inteiro de 8 bits sem sinal do tipo std::uint8_t de acordo com [SWS_CORE_01736] e [SWS_APT_00022]. Trata-se de uma extensão de função específica do AUTOSAR que não existe no padrão ISO-14882 [SWS_CORE_01736]. A função é disponibilizada por meio do cabeçalho ara/core/bitset.h, não possui parâmetros e está declarada como constexpr e noexcept[SWS_CORE_01736]. O primeiro bit da sequência de bits corresponde ao bit menos significativo (LSB) e o último bit ao bit mais significativo (MSB) do valor retornado [SWS_CORE_01736].
Tratamento de erros
Se o valor inteiro correspondente aos bits no bitset não puder ser representado no tipo de destino std::uint8_t, ocorre a violação IsoStdOverflowErrorViolation[SWS_CORE_01736]. Apesar da declaração noexcept, a função é especificada como exception safe no que diz respeito à segurança de exceção [SWS_CORE_01736].
Concorrência e interação
Como função-membro constante, to_uint8t é explicitamente declarada como thread-safe[SWS_CORE_01736], de modo que acessos de leitura paralelos de múltiplas threads à mesma instância são seguros. A representação do tipo de destino baseia-se na definição de [SWS_APT_00022].
Esta nota de uso foi criada de forma automatizada com base na especificação do AUTOSAR Adaptive Release R25-11.
IsoStdOverflowEr- If the integral value x corresponding to the bits in the bitset cannot rorViolation be represented as the return type
Rückgabewert
Typ
Beschreibung
std::uint8_t
The bits in the bitset, whereby the first bit of the bitset corresponds to the least significant bit of the returned number and the last bit corresponds to the most significant bit
Request a governed re-review of this record. The record is not changed immediately.
constexpr unsigned long long to_ullong () const noexcept;
As per corresponding usage in [bitset] except for the following deviations: 1. Function is constexpr 2. The function is noexcept 3. If the integral value x corresponding to the bits in the bitset cannot be represented as the return type, IsoStdOverflowErrorViolation is raised instead of std:: overflow_error
GERADO POR IAnão revisadoModelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 80c15d0568edProcedênciaPerguntas em aberto (1)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão
A função-membro to_ullong da classe ara::core::Bitset converte a sequência de bits armazenada de forma síncrona em um valor inteiro do tipo unsigned long long[SWS_CORE_01735]. Ela está definida no cabeçalho #include "ara/core/bitset.h" e declarada como constexpr bem como noexcept em comparação com o padrão ISO std::bitset[SWS_CORE_01735].
No que concerne ao tratamento de erros e ao comportamento de exceção, aplicam-se as seguintes definições:
Tratamento de estouro: se o valor inteiro representado pelos bits definidos não puder ser representado no tipo de retorno, é disparada a violação IsoStdOverflowErrorViolation em vez de uma exceção std::overflow_error[SWS_CORE_01735].
Segurança de exceção: a função é classificada como exception safe e não lança exceções C++ devido à especificação noexcept[SWS_CORE_01735].
Na interação com outras interfaces, o AUTOSAR Adaptive disponibiliza com to_uint64t uma alternativa tipada que atua como alias direto para to_ullong, mas retorna explicitamente o tipo de largura fixa std::uint64_t[SWS_CORE_01739]. Em ambas as funções, o primeiro bit do bitset corresponde ao bit menos significativo (LSB) e o último bit ao bit mais significativo (MSB) do valor numérico resultante [SWS_CORE_01739]. Como to_ullong é uma função-membro constante e o equivalente funcional é especificado como thread-safe, uma chamada de leitura concorrente na mesma instância também deve ser segura para threads [SWS_CORE_01739]. Pergunta Q-075766fabc193ce8 (aberta)
Esta nota de utilização foi gerada automaticamente e baseia-se na versão da especificação do AUTOSAR Adaptive R25-11.
constexpr unsigned long to_ulong () const noexcept;
As per corresponding usage in [bitset] except for the following deviations: 1. Function is constexpr 2. The function is noexcept 3. If the integral value x corresponding to the bits in the bitset cannot be represented as the return type, IsoStdOverflowErrorViolation is raised instead of std:: overflow_error
GERADO POR IAnão revisadoModelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: 58ed0033ea8eProcedênciaPerguntas em aberto (1)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão
A função-membro ara::core::Bitset::to_ulong converte os bits definidos de uma instância de bitset de forma síncrona em um valor inteiro do tipo unsigned long[SWS_CORE_01734]. A função requer o arquivo de cabeçalho ara/core/bitset.h e pertence ao escopo da classe ara::core::Bitset[SWS_CORE_01734]. Graças à declaração com a assinatura constexpr unsigned long to_ulong() const noexcept;, a avaliação pode ocorrer tanto em tempo de execução quanto já em tempo de compilação em expressões constantes [SWS_CORE_01734].
No comportamento em caso de falha, a função difere significativamente do padrão ISO std::bitset: se o valor inteiro correspondente aos bits não puder ser mapeado no tipo de retorno unsigned long, em vez de uma exceção do tipo std::overflow_error, é disparada uma IsoStdOverflowErrorViolation[SWS_CORE_01734]. Não obstante essa condição de violação, a função é declarada como noexcept e formalmente considerada segura para exceções (exception safe) [SWS_CORE_01734].
Na interação com outras funções de conversão, o AUTOSAR Adaptive disponibiliza com to_uint32t uma contraparte direta que atua como alias para to_ulong, mas retorna precisamente um std::uint32_t[SWS_CORE_01738]. Em relação à concorrência, o método deve ser seguro para threads em acessos de leitura paralelos ao mesmo bitset (interpretação), uma vez que está definido como const e o requisito correspondente to_uint32t está expressamente sinalizado como thread-safe [SWS_CORE_01738]. Pergunta Q-59f95b86801a697d (aberta)
Esta nota de uso foi criada de forma automatizada com base na especificação AUTOSAR R25-11.
gemini-3.8-flash-low· 2026-10-13 · Original em alemão