| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283 | <?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('POLYMORPHIC_ARGUMENT_EXCEPTION', -1);$error['EN'][POLYMORPHIC_ARGUMENT_EXCEPTION] = "Invalid argument pattern for polymorphic function.";$error['FR'][POLYMORPHIC_ARGUMENT_EXCEPTION] = "Modèle inadmissible d'argument pour la fonction polymorphe.".$error['DE'][POLYMORPHIC_ARGUMENT_EXCEPTION] = "Unzulässiges Argumentmuster für polymorphe Funktion.";define('ARGUMENT_TYPE_EXCEPTION', -2);$error['EN'][ARGUMENT_TYPE_EXCEPTION] = "Invalid argument type.";$error['FR'][ARGUMENT_TYPE_EXCEPTION] = "Type inadmissible d'argument.";$error['DE'][ARGUMENT_TYPE_EXCEPTION] = "Unzulässige Argumentart.";define('ARGUMENT_BOUNDS_EXCEPTION', -3);$error['EN'][ARGUMENT_BOUNDS_EXCEPTION] = "Invalid argument range.";$error['FR'][ARGUMENT_BOUNDS_EXCEPTION] = "Gamme inadmissible d'argument.";$error['DE'][ARGUMENT_BOUNDS_EXCEPTION] = "Unzulässige Argumentstrecke.";define('MATRIX_DIMENSION_EXCEPTION', -4);$error['EN'][MATRIX_DIMENSION_EXCEPTION] = "Matrix dimensions are not equal.";$error['FR'][MATRIX_DIMENSION_EXCEPTION] = "Les dimensions de Matrix ne sont pas égales.";$error['DE'][MATRIX_DIMENSION_EXCEPTION] = "Matrixmaße sind nicht gleich.";define('PRECISION_LOSS_EXCEPTION', -5);$error['EN'][PRECISION_LOSS_EXCEPTION] = "Significant precision loss detected.";$error['FR'][PRECISION_LOSS_EXCEPTION] = "Perte significative de précision détectée.";$error['DE'][PRECISION_LOSS_EXCEPTION] = "Bedeutender Präzision Verlust ermittelte.";define('MATRIX_SPD_EXCEPTION', -6);$error['EN'][MATRIX_SPD_EXCEPTION] = "Can only perform operation on symmetric positive definite matrix.";$error['FR'][MATRIX_SPD_EXCEPTION] = "Perte significative de précision détectée.";$error['DE'][MATRIX_SPD_EXCEPTION] = "Bedeutender Präzision Verlust ermittelte.";define('MATRIX_SINGULAR_EXCEPTION', -7);$error['EN'][MATRIX_SINGULAR_EXCEPTION] = "Can only perform operation on singular matrix.";define('MATRIX_RANK_EXCEPTION', -8);$error['EN'][MATRIX_RANK_EXCEPTION] = "Can only perform operation on full-rank matrix.";define('ARRAY_LENGTH_EXCEPTION', -9);$error['EN'][ARRAY_LENGTH_EXCEPTION] = "Array length must be a multiple of m.";define('ROW_LENGTH_EXCEPTION', -10);$error['EN'][ROW_LENGTH_EXCEPTION] = "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()");    }}
 |