errorTable = {
const examplesWithError = [];
let m = math.create();
let parser = m.parser();
for (const name in math) {
let hasExamples;
let examples;
let isFunction;
try {
isFunction = typeof parser.evaluate(name) === "function" ? true : false;
} catch (error) {
isFunction = false;
}
if (isFunction) {
try {
examples = math.evaluate(`help(${name})`).doc.examples;
hasExamples = examples ? true : false;
} catch (error) {
hasExamples = false;
}
if (hasExamples) {
let hasError;
let result;
try {
parser.clear();
result = parser.evaluate(examples);
hasError = false;
} catch (error) {
try {
parser = math.parser();
result = parser.evaluate(examples);
hasError = false;
} catch (error) {
result = error.toString();
hasError = true;
}
}
if (hasError) examplesWithError.push({ name, examples, result });
} else {
examplesWithError.push({
name,
examples: null,
result: "Unavailable examples"
});
}
}
}
return examplesWithError;
}