1: <?php
2: 3: 4: 5: 6: 7: 8:
9:
10:
11: define('JAMALANG', 'EN');
12:
13:
14:
15:
16:
17: $error = array();
18:
19: 20: 21: 22:
23:
24: define('PolymorphicArgumentException', -1);
25: $error['EN'][PolymorphicArgumentException] = "Invalid argument pattern for polymorphic function.";
26: $error['FR'][PolymorphicArgumentException] = "Modèle inadmissible d'argument pour la fonction polymorphe.".
27: $error['DE'][PolymorphicArgumentException] = "Unzulässiges Argumentmuster für polymorphe Funktion.";
28:
29: define('ArgumentTypeException', -2);
30: $error['EN'][ArgumentTypeException] = "Invalid argument type.";
31: $error['FR'][ArgumentTypeException] = "Type inadmissible d'argument.";
32: $error['DE'][ArgumentTypeException] = "Unzulässige Argumentart.";
33:
34: define('ArgumentBoundsException', -3);
35: $error['EN'][ArgumentBoundsException] = "Invalid argument range.";
36: $error['FR'][ArgumentBoundsException] = "Gamme inadmissible d'argument.";
37: $error['DE'][ArgumentBoundsException] = "Unzulässige Argumentstrecke.";
38:
39: define('MatrixDimensionException', -4);
40: $error['EN'][MatrixDimensionException] = "Matrix dimensions are not equal.";
41: $error['FR'][MatrixDimensionException] = "Les dimensions de Matrix ne sont pas égales.";
42: $error['DE'][MatrixDimensionException] = "Matrixmaße sind nicht gleich.";
43:
44: define('PrecisionLossException', -5);
45: $error['EN'][PrecisionLossException] = "Significant precision loss detected.";
46: $error['FR'][PrecisionLossException] = "Perte significative de précision détectée.";
47: $error['DE'][PrecisionLossException] = "Bedeutender Präzision Verlust ermittelte.";
48:
49: define('MatrixSPDException', -6);
50: $error['EN'][MatrixSPDException] = "Can only perform operation on symmetric positive definite matrix.";
51: $error['FR'][MatrixSPDException] = "Perte significative de précision détectée.";
52: $error['DE'][MatrixSPDException] = "Bedeutender Präzision Verlust ermittelte.";
53:
54: define('MatrixSingularException', -7);
55: $error['EN'][MatrixSingularException] = "Can only perform operation on singular matrix.";
56:
57: define('MatrixRankException', -8);
58: $error['EN'][MatrixRankException] = "Can only perform operation on full-rank matrix.";
59:
60: define('ArrayLengthException', -9);
61: $error['EN'][ArrayLengthException] = "Array length must be a multiple of m.";
62:
63: define('RowLengthException', -10);
64: $error['EN'][RowLengthException] = "All rows must have the same length.";
65:
66: 67: 68: 69:
70: function JAMAError($errorNumber = null) {
71: global $error;
72:
73: if (isset($errorNumber)) {
74: if (isset($error[JAMALANG][$errorNumber])) {
75: return $error[JAMALANG][$errorNumber];
76: } else {
77: return $error['EN'][$errorNumber];
78: }
79: } else {
80: return ("Invalid argument to JAMAError()");
81: }
82: }
83: