Raku의 addendum — 없는 메서드 예외에 덧붙는 안내문

Raku의 addendum — 없는 메서드 예외에 덧붙는 안내문

메서드를 잘못 불러서 X::Method::NotFound 예외가 나왔을 때, Raku는 그냥 '메서드가 없다'고만 말하지 않고 추가 설명을 붙여 주는 경우가 있어요. 그 추가 설명을 되돌려 받는 메서드가 addendum이에요.

출처: Raku 공식 문서 — routine addendum

시그니처

method addendum(--> Str:D)

X::Method::NotFound 예외가 담고 있는 추가 설명이나 힌트 문자열을 돌려줘요.

언제 나오는지

X::Method::NotFound는 존재하지 않는 메서드를 호출할 때 던져져요. 예를 들어 다음 코드는

1.no-such

이런 예외를 만들죠.

No such method 'no-such' for invocant of type 'Int'

이 예외 객체가 어떤 메서드를 부르려 했는지(method), 어떤 타입이 invocant였는지(typename), private이었는지(private) 같은 정보를 함께 담고 있는데, addendum은 여기에 곁들여지는 부가 안내문만 따로 뽑아 주는 메서드예요.

참고: addendum은 Rakudo 2019.03 릴리스에서 추가됐어요.