функция Bind [SWS_CORE_00870] Upstream: RS_AP_00130
template <typename F> auto Bind (F &&f) const -> <see below>;
Call the given Callable, and return a new Result with the result of the call. The Callable is expected to be compatible to one of these two interfaces: • Result<XXX, E> f(); • XXX f(); meaning that the Callable either returns a Result<XXX, E> or a XXX directly, where XXX can be any type that is suitable for use by class Result. The return type of this function is decltype(f()) for a template argument F that returns a Result type, and it is Result<decltype(f()), E> for a template argument F that does not return a Result type. If this instance does not contain a value, a new Result<XXX, E> is still created and returned, with the original error contents of this instance being copied into the new instance
Использование и контекст вызова
Функция-член Bind специализации ara::core::Result<void, E> из ara/core/result.h выполняет последующее вычисление на успешном экземпляре без значения результата [SWS_CORE_00870]. Если значение присутствует, переданный callable f вызывается синхронно и без параметров. Callable должен удовлетворять либо интерфейсу Result<XXX, E> f(), либо XXX f(), где XXX должен быть допустимым типом для Result [SWS_CORE_00870]. Если callable возвращает Result, тип возвращаемого значения соответствует decltype(f()); если он возвращает напрямую XXX, результат упаковывается как Result<decltype(f()), E> [SWS_CORE_00870].
Обработка ошибок и параллелизм
Если экземпляр не содержит значения, возвращается новый Result<XXX, E>, в который копируется исходная ошибка [SWS_CORE_00870]. Интерпретация: в этом случае выполнение callable f, вероятно, не происходит. Вопрос Q-6288a7106d2730c3 (открытый) В плане безопасности выполнения функция считается not exception safe [SWS_CORE_00870]. Потокобезопасность является условной (conditional) и полностью зависит от потокобезопасности переданного callable f [SWS_CORE_00870].
Взаимодействие со связанными требованиями
В отличие от первичных функций Result<T, E> из [SWS_CORE_00768] и [SWS_CORE_00941], в которых callable принимает значение экземпляра через f(const T&), данная перегрузка [SWS_CORE_00870] привязывает операции к результатам void и поэтому ожидает callable без параметров.
Это указание по использованию было сгенерировано автоматически на основе версии спецификации AUTOSAR R25-11.
| Header-Datei | #include "ara/core/result.h" |
|---|---|
| Scope | class ara::core::Result< void, E > |
| Exception-Sicherheit | not exception safe |
| Thread-Sicherheit | conditional, depends on thread safety of f |
Template-Parameter
| Parameter | Beschreibung |
|---|---|
| F | the type of the Callable f |
Parameter (in)
| Parameter | Beschreibung |
|---|---|
| f | the Callable |
Rückgabewert
| Typ | Beschreibung |
|---|---|
| <see below> | a new Result instance of the possibly transformed type |
Request a governed re-review of this record. The record is not changed immediately.
- Record
AUTOSAR/AP/record/SWS_CORE_00870- Status
- valid/unmigrated
- Version
AUTOSAR/AP/record/SWS_CORE_00870@rel:R25-11#abbaf32c- Content hash
abbaf32c- Source
- https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Core.pdf#nameddest=SWS_CORE_00870
Status: valid/unmigrated
Version: rel:R25-11#e97c3561
Versionshistorie & Revisions (1 transition, 7 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_00870@rel:R25-11#e97c3561
Recorded Revisions (7):
- R25-11
rel:R25-11#609a669f2026-09-30 - R20-11
rel:R20-11#54a19d8c2026-10-14 - R21-11
rel:R21-11#54a19d8c2026-10-14 - R22-11
rel:R22-11#82ad4f452026-10-14 - R23-11
rel:R23-11#0661a5ee2026-10-14 - R24-11
rel:R24-11#1de461af2026-10-14 - R25-11
rel:R25-11#e97c35612026-10-14 active
Requirement Text as-of this release:
Curation Decisions:
Reachable Artifacts & Dependents:
| Date | Actor | Transition | Reason / Rationale | Campaign |
|---|---|---|---|---|
| 2026-08-13 | tool | none → valid/unmigrated | mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record | 2026-08-13-status-backfill |
gemini-3.8-flash-low· 2026-10-13 · Немецкий оригинал