This commit applies `strictNullChecks` to the entire codebase to improve maintainability and type safety. Key changes include: - Remove some explicit null-checks where unnecessary. - Add necessary null-checks. - Refactor static factory functions for a more functional approach. - Improve some test names and contexts for better debugging. - Add unit tests for any additional logic introduced. - Refactor `createPositionFromRegexFullMatch` to its own function as the logic is reused. - Prefer `find` prefix on functions that may return `undefined` and `get` prefix for those that always return a value.
13 lines
262 B
TypeScript
13 lines
262 B
TypeScript
export function collectExceptionMessage(action: () => unknown): string {
|
|
let message: string | undefined;
|
|
try {
|
|
action();
|
|
} catch (e) {
|
|
message = e.message;
|
|
}
|
|
if (!message) {
|
|
throw new Error('action did not throw');
|
|
}
|
|
return message;
|
|
}
|