12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182 |
- <?php
- /**
- * @package JAMA
- *
- * Error handling
- * @author Michael Bommarito
- * @version 01292005
- */
- //Language constant
- define('JAMALANG', 'EN');
- //All errors may be defined by the following format:
- //define('ExceptionName', N);
- //$error['lang'][ExceptionName] = 'Error message';
- $error = array();
- /*
- I've used Babelfish and a little poor knowledge of Romance/Germanic languages for the translations here.
- Feel free to correct anything that looks amiss to you.
- */
- define('PolymorphicArgumentException', -1);
- $error['EN'][PolymorphicArgumentException] = "Invalid argument pattern for polymorphic function.";
- $error['FR'][PolymorphicArgumentException] = "Modèle inadmissible d'argument pour la fonction polymorphe.".
- $error['DE'][PolymorphicArgumentException] = "Unzulässiges Argumentmuster für polymorphe Funktion.";
- define('ArgumentTypeException', -2);
- $error['EN'][ArgumentTypeException] = "Invalid argument type.";
- $error['FR'][ArgumentTypeException] = "Type inadmissible d'argument.";
- $error['DE'][ArgumentTypeException] = "Unzulässige Argumentart.";
- define('ArgumentBoundsException', -3);
- $error['EN'][ArgumentBoundsException] = "Invalid argument range.";
- $error['FR'][ArgumentBoundsException] = "Gamme inadmissible d'argument.";
- $error['DE'][ArgumentBoundsException] = "Unzulässige Argumentstrecke.";
- define('MatrixDimensionException', -4);
- $error['EN'][MatrixDimensionException] = "Matrix dimensions are not equal.";
- $error['FR'][MatrixDimensionException] = "Les dimensions de Matrix ne sont pas égales.";
- $error['DE'][MatrixDimensionException] = "Matrixmaße sind nicht gleich.";
- define('PrecisionLossException', -5);
- $error['EN'][PrecisionLossException] = "Significant precision loss detected.";
- $error['FR'][PrecisionLossException] = "Perte significative de précision détectée.";
- $error['DE'][PrecisionLossException] = "Bedeutender Präzision Verlust ermittelte.";
- define('MatrixSPDException', -6);
- $error['EN'][MatrixSPDException] = "Can only perform operation on symmetric positive definite matrix.";
- $error['FR'][MatrixSPDException] = "Perte significative de précision détectée.";
- $error['DE'][MatrixSPDException] = "Bedeutender Präzision Verlust ermittelte.";
- define('MatrixSingularException', -7);
- $error['EN'][MatrixSingularException] = "Can only perform operation on singular matrix.";
- define('MatrixRankException', -8);
- $error['EN'][MatrixRankException] = "Can only perform operation on full-rank matrix.";
- define('ArrayLengthException', -9);
- $error['EN'][ArrayLengthException] = "Array length must be a multiple of m.";
- define('RowLengthException', -10);
- $error['EN'][RowLengthException] = "All rows must have the same length.";
- /**
- * Custom error handler
- * @param int $num Error number
- */
- function JAMAError($errorNumber = null) {
- global $error;
- if (isset($errorNumber)) {
- if (isset($error[JAMALANG][$errorNumber])) {
- return $error[JAMALANG][$errorNumber];
- } else {
- return $error['EN'][$errorNumber];
- }
- } else {
- return ("Invalid argument to JAMAError()");
- }
- }
|