QHBugs | Error codes thrown when an unrecoverable condition has been detected. These should be used in combination with StunException. Messages are roughly partitioned by subsystem (assembly); one subsystem will rarely need multiple "bug" messages. A new message should be defined only when automated processing must distinguish it from others. |
QHEnsure | Utility methods for simplified checking of invariants. This should be used only to report program bugs, not user-correctable errors! |
QHException | Default exception type that should be thrown when a message is available in HRCatalog. |
QHExternalProgramComponent | |
QHFacilities | |
QHGraph | |
QHNotificationEvent | Notification event to be presented to the user. |
QHNucleus | |
QHNucleusFilesystem | |
QHSchemas | Exceptions thrown directly from Quine.Schemas.* assemblies. Facility 1. |
QHSchemasCore | Exceptions thrown from Quine.Schemas.Core. |
StunException | Thrown when a program gets "stunned" on a bug, with no means to recover. This covers all errors detected at run-time, both usage errors and conditions that cannot be handled. The class is sealed and cannot be customized. When customization is needed, a new exception type and error code should be defined in a facility other than QHBugs. USAGE GUIDELINE: this exception propagating to the end-user should be considered a program bug. The exception derives from NotImplementedException since the condition is detected, but it is not anticipated that it can be handled in any sane way. |
QHMessage | Combines a hresult code with a string format message. Used to build the message catalog which in turn will make it possible to look up help text. |
QHResult | Builds a HRESULT value that is encoded as customer-defined. The value may be extracted only by implicit conversion to int. Also overrides ToString to display a hex-formatted error code with prepended severity letter. |
IQHException | Marker interface for exceptions that can be classified through HRCatalog. The implementing exception MUST set HResult property and it SHOULD override Message property. Only classes deriving from Exception can implement this interface, otherwise InvalidCastException will be thrown when methods are attempted to be used. |