| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182 | <?php/** *	@package JAMA * *	Error handling *	@author Michael Bommarito *	@version 01292005 *///Language constantdefine('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()");	}}
 |