![]() |
Lumiera 0.pre.04~rc.1
»edit your freedom«
|
Namespaces | |
| namespace | anonymous_namespace{error-exception.cpp} |
Typedefs | |
| using | Logic = LumieraError< LERR_(LOGIC)> |
| using | Fatal = LumieraError< LERR_(FATAL), Logic > |
| using | State = LumieraError< LERR_(STATE)> |
| using | Flag = LumieraError< LERR_(FLAG), State > |
| using | Invalid = LumieraError< LERR_(INVALID)> |
| using | Config = LumieraError< LERR_(CONFIG), Invalid > |
| using | External = LumieraError< LERR_(EXTERNAL)> |
Classes | |
| class | LumieraError |
| Derived specific exceptions within Lumiera's exception hierarchy. More... | |
Functions | |
| LUMIERA_ERROR_DECLARE (CAPABILITY_QUERY) | |
| unresolvable capability query. | |
| LUMIERA_ERROR_DEFINE (CAPABILITY_QUERY, "unresolvable capability query") | |
| LUMIERA_ERROR_DECLARE (DIFF_STRUCTURE) | |
| Invalid diff structure: implicit rules and assumptions violated. | |
| LUMIERA_ERROR_DECLARE (DIFF_CONFLICT) | |
| Collision in diff application: contents of target not as expected. | |
| LUMIERA_ERROR_DEFINE (DIFF_STRUCTURE, "Invalid diff structure: implicit rules and assumptions violated.") | |
| LUMIERA_ERROR_DEFINE (DIFF_CONFLICT, "Collision in diff application: contents of target not as expected.") | |
| const string | default_usermsg (Error *) noexcept |
| the message shown to the user per default if an exception reaches one of the top-level catch clauses. | |
| CStr | detailInfo () |
| LUMIERA_ERROR_DEFINE (LOGIC, "internal logic broken") | |
| LUMIERA_ERROR_DEFINE (FATAL, "floundered") | |
| LUMIERA_ERROR_DEFINE (CONFIG, "misconfiguration") | |
| LUMIERA_ERROR_DEFINE (STATE, "unforeseen state") | |
| LUMIERA_ERROR_DEFINE (FLAG, "non-cleared lumiera errorstate") | |
| LUMIERA_ERROR_DEFINE (INVALID, "invalid input or parameters") | |
| LUMIERA_ERROR_DEFINE (EXTERNAL, "failure in external service") | |
| LUMIERA_ERROR_DEFINE (EXCEPTION, "generic Lumiera exception") | |
| LUMIERA_ERROR_DEFINE (ASSERTION, "assertion failure") | |
| LUMIERA_ERROR_DEFINE (LIFECYCLE, "Lifecycle assumptions violated") | |
| LUMIERA_ERROR_DEFINE (WRONG_TYPE, "runtime type mismatch") | |
| LUMIERA_ERROR_DEFINE (ITER_EXHAUST, "end of sequence reached") | |
| LUMIERA_ERROR_DEFINE (CAPACITY, "predefined fixed storage capacity") | |
| LUMIERA_ERROR_DEFINE (SAFETY_LIMIT, "exceeding fixed internal safety limit") | |
| LUMIERA_ERROR_DEFINE (INDEX_BOUNDS, "index out of bounds") | |
| LUMIERA_ERROR_DEFINE (BOTTOM_VALUE, "invalid or NIL value") | |
| LUMIERA_ERROR_DEFINE (UNCONNECTED, "missing connection") | |
| LUMIERA_ERROR_DEFINE (UNIMPLEMENTED,"using a feature not yet implemented....") | |
| void | lumiera_unexpectedException () noexcept |
| global function for handling unknown exceptions encountered at functions declaring not to throw this kind of exception. | |
| void | assertion_terminate (const string &location) |
| throw an error::Fatal indicating "assertion failure" | |
| LUMIERA_ERROR_DECLARE (EXCEPTION) | |
| error-ID for unspecified exceptions | |
| LUMIERA_ERROR_DECLARE (LOGIC) | |
| contradiction to internal logic assumptions detected | |
| LUMIERA_ERROR_DECLARE (FATAL) | |
| unable to cope with, internal logic floundered | |
| LUMIERA_ERROR_DECLARE (CONFIG) | |
| execution aborted due to misconfiguration | |
| LUMIERA_ERROR_DECLARE (STATE) | |
| unforeseen internal state | |
| LUMIERA_ERROR_DECLARE (FLAG) | |
| non-cleared lumiera errorstate from C code | |
| LUMIERA_ERROR_DECLARE (INVALID) | |
| invalid input or parameters encountered | |
| LUMIERA_ERROR_DECLARE (EXTERNAL) | |
| failure in external service the application relies on | |
| LUMIERA_ERROR_DECLARE (ASSERTION) | |
| assertion failure | |
| LUMIERA_ERROR_DECLARE (LIFECYCLE) | |
| Lifecycle assumptions violated. | |
| LUMIERA_ERROR_DECLARE (WRONG_TYPE) | |
| runtime type mismatch | |
| LUMIERA_ERROR_DECLARE (ITER_EXHAUST) | |
| end of sequence reached | |
| LUMIERA_ERROR_DECLARE (CAPACITY) | |
| predefined fixed storage capacity | |
| LUMIERA_ERROR_DECLARE (SAFETY_LIMIT) | |
| exceeding fixed internal safety limit | |
| LUMIERA_ERROR_DECLARE (INDEX_BOUNDS) | |
| index out of bounds | |
| LUMIERA_ERROR_DECLARE (BOTTOM_VALUE) | |
| invalid or NIL value | |
| LUMIERA_ERROR_DECLARE (UNCONNECTED) | |
| missing connection | |
| LUMIERA_ERROR_DECLARE (UNIMPLEMENTED) | |
| unimplemented feature | |
| void | install_unexpectedException_handler () |
| install our own handler for undeclared exceptions. | |
| LUMIERA_ERROR_DECLARE (INVALID_TIMECODE) | |
| timecode format error, illegal value encountered. | |
| LUMIERA_ERROR_DEFINE (INVALID_TIMECODE, "timecode format error, illegal value encountered") | |
| LUMIERA_ERROR_DECLARE (UIWIRING) | |
| LUMIERA_ERROR_DEFINE (UIWIRING, "GUI state contradicts assumptions in signal wiring") | |
| LUMIERA_ERROR_DEFINE (UNKNOWN_ASSET_ID, "non-registered Asset ID") | |
| LUMIERA_ERROR_DEFINE (WRONG_ASSET_KIND, "wrong Asset kind, unable to cast") | |
| LUMIERA_ERROR_DECLARE (UNKNOWN_ASSET_ID) | |
| use of a non-registered Asset ID. | |
| LUMIERA_ERROR_DECLARE (WRONG_ASSET_KIND) | |
| Asset ID of wrong Asset kind, unable to cast. | |
| LUMIERA_ERROR_DECLARE (INVALID_ARGUMENTS) | |
| Arguments provided for binding doesn't match stored command function parameters. | |
| LUMIERA_ERROR_DECLARE (UNBOUND_ARGUMENTS) | |
| Command functor not yet usable, because arguments aren't bound. | |
| LUMIERA_ERROR_DECLARE (MISSING_MEMENTO) | |
| Undo functor not yet usable, because no undo state has been captured. | |
| LUMIERA_ERROR_DEFINE (INVALID_COMMAND, "Unknown or insufficiently defined command") | |
| LUMIERA_ERROR_DEFINE (DUPLICATE_COMMAND, "Attempt to redefine an already existing command definition") | |
| LUMIERA_ERROR_DEFINE (INVALID_ARGUMENTS, "Arguments provided for binding doesn't match stored command function parameters") | |
| LUMIERA_ERROR_DEFINE (UNBOUND_ARGUMENTS, "Command mutation functor not yet usable, because arguments aren't bound") | |
| LUMIERA_ERROR_DEFINE (MISSING_MEMENTO, "Undo functor not yet usable, because no undo state has been captured") | |
| LUMIERA_ERROR_DECLARE (INVALID_COMMAND) | |
| Unknown or insufficiently defined command. | |
| LUMIERA_ERROR_DECLARE (DUPLICATE_COMMAND) | |
| Attempt to redefine an already existing command definition. | |
| LUMIERA_ERROR_DEFINE (INVALID_PLACEMENTREF, "unresolvable placement reference, or of incompatible type") | |
| LUMIERA_ERROR_DEFINE (BOTTOM_PLACEMENTREF, "NIL placement-ID marker encountered.") | |
| LUMIERA_ERROR_DEFINE (BOTTOM_MOBJECTREF, "NIL MObjectRef encountered") | |
| LUMIERA_ERROR_DECLARE (BOTTOM_MOBJECTREF) | |
| NIL MObjectRef encountered. | |
| LUMIERA_ERROR_DECLARE (INVALID_PLACEMENTREF) | |
| unresolvable placement reference, or of incompatible type | |
| LUMIERA_ERROR_DECLARE (BOTTOM_PLACEMENTREF) | |
| NIL placement-ID marker encountered. | |
| LUMIERA_ERROR_DEFINE (NOT_IN_SESSION, "referring to a Placement not known to the current session") | |
| LUMIERA_ERROR_DEFINE (PLACEMENT_TYPE, "requested Placement (pointee) type not compatible with data or context") | |
| LUMIERA_ERROR_DEFINE (NONEMPTY_SCOPE, "Placement scope (still) contains other elements") | |
| LUMIERA_ERROR_DECLARE (NOT_IN_SESSION) | |
| referring to a Placement not known to the current session | |
| LUMIERA_ERROR_DECLARE (PLACEMENT_TYPE) | |
| requested Placement (pointee) type not compatible with data or context | |
| LUMIERA_ERROR_DECLARE (NONEMPTY_SCOPE) | |
| Placement scope (still) contains other elements. | |
| LUMIERA_ERROR_DEFINE (INVALID_SCOPE, "Placement scope invalid and not locatable within model") | |
| LUMIERA_ERROR_DEFINE (NO_PARENT_SCOPE, "Parent scope of root not accessible") | |
| LUMIERA_ERROR_DEFINE (EMPTY_SCOPE_PATH, "Placement scope not locatable (empty model path)") | |
| LUMIERA_ERROR_DECLARE (EMPTY_SCOPE_PATH) | |
| Placement scope not locatable (empty model path) | |
| LUMIERA_ERROR_DECLARE (NO_PARENT_SCOPE) | |
| Parent scope of root not accessible. | |
| LUMIERA_ERROR_DECLARE (INVALID_SCOPE) | |
| Placement scope invalid and not locatable within model. | |
| LUMIERA_ERROR_DECLARE (CANT_PLAY) | |
| unable to build playback or render process for this configuration | |
| LUMIERA_ERROR_DEFINE (CANT_PLAY, "unable to build playback or render process for this configuration") | |
|
private |
|
private |
|
private |
|
private |
|
private |
| LUMIERA_ERROR_DECLARE | ( | CAPABILITY_QUERY | ) |
unresolvable capability query.
| LUMIERA_ERROR_DEFINE | ( | CAPABILITY_QUERY | , |
| "unresolvable capability query" | |||
| ) |
| LUMIERA_ERROR_DECLARE | ( | DIFF_STRUCTURE | ) |
Invalid diff structure: implicit rules and assumptions violated.
| LUMIERA_ERROR_DECLARE | ( | DIFF_CONFLICT | ) |
Collision in diff application: contents of target not as expected.
| LUMIERA_ERROR_DEFINE | ( | DIFF_STRUCTURE | , |
| "Invalid diff structure: implicit rules and assumptions violated." | |||
| ) |
| LUMIERA_ERROR_DEFINE | ( | DIFF_CONFLICT | , |
| "Collision in diff application: contents of target not as expected." | |||
| ) |
|
inlinenoexcept |
the message shown to the user per default if an exception reaches one of the top-level catch clauses.
to be localised
develop a framework to set more specific yet friendly messages
Definition at line 49 of file error-exception.cpp.
| CStr detailInfo | ( | ) |
Definition at line 55 of file error-exception.cpp.
References lumiera_error_extra().
Referenced by lumiera::maybeThrow(), and lumiera::throwOnError().
Here is the call graph for this function:
Here is the caller graph for this function:| LUMIERA_ERROR_DEFINE | ( | LOGIC | , |
| "internal logic broken" | |||
| ) |
| LUMIERA_ERROR_DEFINE | ( | FATAL | , |
| "floundered" | |||
| ) |
| LUMIERA_ERROR_DEFINE | ( | CONFIG | , |
| "misconfiguration" | |||
| ) |
| LUMIERA_ERROR_DEFINE | ( | STATE | , |
| "unforeseen state" | |||
| ) |
| LUMIERA_ERROR_DEFINE | ( | FLAG | , |
| "non-cleared lumiera errorstate" | |||
| ) |
| LUMIERA_ERROR_DEFINE | ( | INVALID | , |
| "invalid input or parameters" | |||
| ) |
| LUMIERA_ERROR_DEFINE | ( | EXTERNAL | , |
| "failure in external service" | |||
| ) |
| LUMIERA_ERROR_DEFINE | ( | EXCEPTION | , |
| "generic Lumiera exception" | |||
| ) |
| LUMIERA_ERROR_DEFINE | ( | ASSERTION | , |
| "assertion failure" | |||
| ) |
| LUMIERA_ERROR_DEFINE | ( | LIFECYCLE | , |
| "Lifecycle assumptions violated" | |||
| ) |
| LUMIERA_ERROR_DEFINE | ( | WRONG_TYPE | , |
| "runtime type mismatch" | |||
| ) |
| LUMIERA_ERROR_DEFINE | ( | ITER_EXHAUST | , |
| "end of sequence reached" | |||
| ) |
| LUMIERA_ERROR_DEFINE | ( | CAPACITY | , |
| "predefined fixed storage capacity" | |||
| ) |
| LUMIERA_ERROR_DEFINE | ( | SAFETY_LIMIT | , |
| "exceeding fixed internal safety limit" | |||
| ) |
| LUMIERA_ERROR_DEFINE | ( | INDEX_BOUNDS | , |
| "index out of bounds" | |||
| ) |
| LUMIERA_ERROR_DEFINE | ( | BOTTOM_VALUE | , |
| "invalid or NIL value" | |||
| ) |
| LUMIERA_ERROR_DEFINE | ( | UNCONNECTED | , |
| "missing connection" | |||
| ) |
| LUMIERA_ERROR_DEFINE | ( | UNIMPLEMENTED | , |
| "using a feature not yet implemented...." | |||
| ) |
|
noexcept |
global function for handling unknown exceptions encountered at functions declaring not to throw this kind of exception.
Basically, any such event can be considered a severe design flaw; we can just add some diagnostics prior to halting.
Definition at line 167 of file error-exception.cpp.
References cStr(), Error::getID(), Error::getUsermsg(), lumiera_error(), Error::rootCause(), and Error::what().
Referenced by lumiera::error::anonymous_namespace{error-exception.cpp}::install_unexpectedException_handler().
Here is the call graph for this function:
Here is the caller graph for this function:| void assertion_terminate | ( | const string & | location | ) |
throw an error::Fatal indicating "assertion failure"
Definition at line 208 of file error-exception.cpp.
| LUMIERA_ERROR_DECLARE | ( | EXCEPTION | ) |
error-ID for unspecified exceptions
|
private |
contradiction to internal logic assumptions detected
|
private |
unable to cope with, internal logic floundered
|
private |
execution aborted due to misconfiguration
|
private |
unforeseen internal state
|
private |
non-cleared lumiera errorstate from C code
|
private |
invalid input or parameters encountered
|
private |
failure in external service the application relies on
|
private |
assertion failure
|
private |
Lifecycle assumptions violated.
|
private |
runtime type mismatch
|
private |
end of sequence reached
|
private |
predefined fixed storage capacity
|
private |
exceeding fixed internal safety limit
|
private |
index out of bounds
|
private |
invalid or NIL value
|
private |
missing connection
|
private |
unimplemented feature
|
private |
install our own handler for undeclared exceptions.
Will be called automatically ON_BASIC_INIT when linking exception.cpp
| LUMIERA_ERROR_DECLARE | ( | INVALID_TIMECODE | ) |
timecode format error, illegal value encountered.
| LUMIERA_ERROR_DEFINE | ( | INVALID_TIMECODE | , |
| "timecode format | error, | ||
| illegal value encountered" | |||
| ) |
| LUMIERA_ERROR_DECLARE | ( | UIWIRING | ) |
| LUMIERA_ERROR_DEFINE | ( | UIWIRING | , |
| "GUI state contradicts assumptions in signal wiring" | |||
| ) |
| LUMIERA_ERROR_DEFINE | ( | UNKNOWN_ASSET_ID | , |
| "non-registered Asset ID" | |||
| ) |
| LUMIERA_ERROR_DEFINE | ( | WRONG_ASSET_KIND | , |
| "wrong Asset | kind, | ||
| unable to cast" | |||
| ) |
| LUMIERA_ERROR_DECLARE | ( | UNKNOWN_ASSET_ID | ) |
use of a non-registered Asset ID.
| LUMIERA_ERROR_DECLARE | ( | WRONG_ASSET_KIND | ) |
Asset ID of wrong Asset kind, unable to cast.
| LUMIERA_ERROR_DECLARE | ( | INVALID_ARGUMENTS | ) |
Arguments provided for binding doesn't match stored command function parameters.
| LUMIERA_ERROR_DECLARE | ( | UNBOUND_ARGUMENTS | ) |
Command functor not yet usable, because arguments aren't bound.
| LUMIERA_ERROR_DECLARE | ( | MISSING_MEMENTO | ) |
Undo functor not yet usable, because no undo state has been captured.
| LUMIERA_ERROR_DEFINE | ( | INVALID_COMMAND | , |
| "Unknown or insufficiently defined command" | |||
| ) |
| LUMIERA_ERROR_DEFINE | ( | DUPLICATE_COMMAND | , |
| "Attempt to redefine an already existing command definition" | |||
| ) |
| LUMIERA_ERROR_DEFINE | ( | INVALID_ARGUMENTS | , |
| "Arguments provided for binding doesn't match stored command function parameters" | |||
| ) |
| LUMIERA_ERROR_DEFINE | ( | UNBOUND_ARGUMENTS | , |
| "Command mutation functor not yet | usable, | ||
| because arguments aren 't bound" | |||
| ) |
| LUMIERA_ERROR_DEFINE | ( | MISSING_MEMENTO | , |
| "Undo functor not yet | usable, | ||
| because no undo state has been captured" | |||
| ) |
| LUMIERA_ERROR_DECLARE | ( | INVALID_COMMAND | ) |
Unknown or insufficiently defined command.
| LUMIERA_ERROR_DECLARE | ( | DUPLICATE_COMMAND | ) |
Attempt to redefine an already existing command definition.
| LUMIERA_ERROR_DEFINE | ( | INVALID_PLACEMENTREF | , |
| "unresolvable placement | reference, | ||
| or of incompatible type" | |||
| ) |
| LUMIERA_ERROR_DEFINE | ( | BOTTOM_PLACEMENTREF | , |
| "NIL placement-ID marker encountered." | |||
| ) |
| LUMIERA_ERROR_DEFINE | ( | BOTTOM_MOBJECTREF | , |
| "NIL MObjectRef encountered" | |||
| ) |
| LUMIERA_ERROR_DECLARE | ( | BOTTOM_MOBJECTREF | ) |
NIL MObjectRef encountered.
| LUMIERA_ERROR_DECLARE | ( | INVALID_PLACEMENTREF | ) |
unresolvable placement reference, or of incompatible type
| LUMIERA_ERROR_DECLARE | ( | BOTTOM_PLACEMENTREF | ) |
NIL placement-ID marker encountered.
| LUMIERA_ERROR_DEFINE | ( | NOT_IN_SESSION | , |
| "referring to a Placement not known to the current session" | |||
| ) |
| LUMIERA_ERROR_DEFINE | ( | PLACEMENT_TYPE | , |
| "requested Placement (pointee) type not compatible with data or context" | |||
| ) |
| LUMIERA_ERROR_DEFINE | ( | NONEMPTY_SCOPE | , |
| "Placement scope (still) contains other elements" | |||
| ) |
| LUMIERA_ERROR_DECLARE | ( | NOT_IN_SESSION | ) |
referring to a Placement not known to the current session
| LUMIERA_ERROR_DECLARE | ( | PLACEMENT_TYPE | ) |
requested Placement (pointee) type not compatible with data or context
| LUMIERA_ERROR_DECLARE | ( | NONEMPTY_SCOPE | ) |
Placement scope (still) contains other elements.
| LUMIERA_ERROR_DEFINE | ( | INVALID_SCOPE | , |
| "Placement scope invalid and not locatable within model" | |||
| ) |
| LUMIERA_ERROR_DEFINE | ( | NO_PARENT_SCOPE | , |
| "Parent scope of root not accessible" | |||
| ) |
| LUMIERA_ERROR_DEFINE | ( | EMPTY_SCOPE_PATH | , |
| "Placement scope not locatable (empty model path)" | |||
| ) |
| LUMIERA_ERROR_DECLARE | ( | EMPTY_SCOPE_PATH | ) |
Placement scope not locatable (empty model path)
| LUMIERA_ERROR_DECLARE | ( | NO_PARENT_SCOPE | ) |
Parent scope of root not accessible.
| LUMIERA_ERROR_DECLARE | ( | INVALID_SCOPE | ) |
Placement scope invalid and not locatable within model.
| LUMIERA_ERROR_DECLARE | ( | CANT_PLAY | ) |
unable to build playback or render process for this configuration
| LUMIERA_ERROR_DEFINE | ( | CANT_PLAY | , |
| "unable to build playback or render process for this configuration" | |||
| ) |