|
Finance manager
Лабораторна робота №2 - Документація коду
|
Шаблонний клас, що інкапсулює результат операції, яка може бути успішною (з даними) або невдалою (з помилкою). More...
#include <Result.h>
Public Member Functions | |
| bool | is_success () const |
| Перевіряє, чи є результат успішним. | |
| const T & | get_value () const |
| Отримує значення з успішного результату. | |
| const std::string & | get_error () const |
| Отримує повідомлення про помилку з невдалого результату. | |
Static Public Member Functions | |
| static Result< T > | success (T value) |
| Статичний фабричний метод для створення успішного результату. | |
| static Result< T > | error (const std::string &error_message) |
| Статичний фабричний метод для створення невдалого результату (помилки). | |
Private Member Functions | |
| Result (bool success, T value, std::string error) | |
| Приватний конструктор. | |
Private Attributes | |
| bool | m_is_success |
| Прапорець, що показує, чи успішна операція. | |
| T | m_value |
| Значення (payload) у разі успіху. | |
| std::string | m_error |
| Рядок з описом помилки у разі невдачі. | |
Шаблонний клас, що інкапсулює результат операції, яка може бути успішною (з даними) або невдалою (з помилкою).
Це "monad-like" клас, схожий на std::optional або std::expected. Він допомагає уникнути використання винятків для обробки очікуваних помилок (напр., "файл не знайдено" при імпорті).
| T | Тип значення, яке повертається у разі успіху. |
|
inlinestatic |
Статичний фабричний метод для створення невдалого результату (помилки).
| error_message | Опис помилки, що сталася. |
is_success() == false та значенням T за замовчуванням.
|
inline |
Отримує повідомлення про помилку з невдалого результату.
|
inline |
Отримує значення з успішного результату.
std::runtime_error, якщо викликати цей метод для невдалого результату (коли is_success() == false). Завжди перевіряйте is_success() перед викликом get_value().| std::runtime_error | Якщо результат є помилкою. |
|
inline |
Перевіряє, чи є результат успішним.
Статичний фабричний метод для створення успішного результату.
| value | Значення, яке потрібно "загорнути" у Result. |
is_success() == true.
|
private |
Рядок з описом помилки у разі невдачі.
|
private |
Прапорець, що показує, чи успішна операція.
|
private |
Значення (payload) у разі успіху.