|
AUI Framework
master
Cross-platform base for C++ UI apps
|
Indicates an evaluation loop. More...
#include <AUI/Util/AEvaluationLoopException.h>
Additional Inherited Members# | |
Public Member Functions inherited from AException | |
| AException (AStacktrace stacktrace) | |
| AException (const AString &message) | |
| AException (const AException &exception)=default | |
| AException (AException &&exception) noexcept=default | |
| AException (const AString &message, std::exception_ptr causedBy, AStacktrace stacktrace=AStacktrace::capture(2)) | |
| virtual AString | getMessage () const noexcept |
| const char * | what () const noexcept override |
| const AStacktrace & | stacktrace () const noexcept |
| const std::exception_ptr & | causedBy () const noexcept |
AEvaluationLoopException is thrown by aui::lazy and therefore by APropertyPrecomputed.
The condition under which AEvaluationLoopException is thrown is when there's an attempt to read from or access a property during its own value evaluation. This creates an infinite evaluation loop, leading the system to throw this exception to prevent potential stack overflow and unresponsiveness due to continuous evaluations.