이제 클래스가 있으므로 python/js/ruby와 같은 오류 유형을 던지고 잡을 수 있다면 좋을 것 같습니다. 따라서 특정 오류 유형만 포착하고 싶다면 그렇게 할 수 있습니다.
그리고 클래스가 상속받을 수 있는 내장 오류 유형을 가질 수 있다면 좋을 것입니다. 그런 다음 예외_msg를 {"Name Unresolved: bbb"(1, 2, "bbb", bbb /*###*/)} 대신 정보(줄이 있는 역추적 포함)를 더 쉽게 구문 분석할 수 있는 클래스로 지정합니다.
그렇게 하면 우리는 다음과 같은 일을 할 수 있습니다
Names default to here(1);
try(
a = bbb;
,
show(exception_msg["message"]) // show the relevant message
show(exception_msg["caller"]) // what function the exception happened in
show(exception_msg["traceback"][2]["message"]);
show(exception_msg["traceback"][2]["line"]);
);
이와 유사합니다 https://community.jmp.com/t5/JMP-Wish-List/Improved-JSL-Stack-Trace-in-Log-on-Error/idi-p/78104
오류 유형 외에도 오류가 발생한 코드 줄 번호를 함께 알려주세요!
일반 실행 시 오류를 보고할 때, 그리고 예외 메시지에서:
오류 메시지 - 어느 줄에서 발생했나요?