New file |
0,0 → 1,82 |
<?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()"); |
} |
} |