(v13) Error reporting enumerations
This page applies to Harlequin v13.1r0 and later; and to Harlequin MultiRIP but not Harlequin Core
The PFI defines a hierarchical set of error codes, represented below as a set of tabulated lists. All codes that represent an error condition descend from the root error code, plgFwErrorRoot
, which represents an unspecified error type. There are three main subclasses of error message which descend from plgFwErrorRoot
: parameter errors, denied operations and failed operations, each of which has its own descending hierarchy, representing progressively more specific errors.
By contrast, there is only one value representing a successful operation ‐ plgFwErrorSuccess
.
For convenience in function descriptions, errors are referred to by the names of their ordinals below: “set the error plgFwErrorBug
” should be read as shorthand for “set the error state to reflect an error condition whose ordinal value is plgFwErrorBug
”.
Successful operation
Successful operation plgFwErrorSuccess;
Uncategorized error
Uncategorised error plgFwErrorRoot;
Parameter errors
Parameter rejected plgFwErrorParameter;
Pointer parameter rejected plgFwErrorPointer; Pointer parameter NULL plgFwErrorPointerNull;
Numeric parameter rejected plgFwErrorNumeric;
Numeric parameter out of range plgFwErrorNumericRange; Numeric parameter illegal value plgFwErrorNumericValue;
String parameter rejected plgFwErrorString; String parameter empty plgFwErrorStringEmpty;
String parameter too long plgFwErrorStringLength;
String parameter illegal character plgFwErrorStringCharacter; String parameter syntax incorrect plgFwErrorStringSyntax; String parameter illegal value plgFwErrorStringValue;
Denied operations
Operation denied plgFwErrorOperationDenied; Does not exist plgFwErrorNonExistent; Already exists plgFwErrorAlreadyExists; Access denied plgFwErrorAccessDenied; In use plgFwErrorInUse;
Failed operations
Operation failed plgFwErrorOperationFailed; Operation aborted plgFwErrorAbort; Limit reached plgFwErrorLimit;
Hardware limit reached plgFwErrorHardwareLimit; Memory exhausted plgFwErrorNoMemory;
File storage device full plgFwErrorDiskFull; Software limit plgFwErrorSoftwareLimit;
Hardware error plgFwErrorHardware;
Unimplemented operation plgFwErrorUnimplemented; Fatal internal error plgFwErrorFatal;
Program logic error plgFwErrorBug;