IRB 시작시 사용자 지정 파일, 모듈 및 클래스를 많이로드하여이를 향상시킵니다.IRB를 확장하여 원하는 방법으로 "필터링"방법을 찾을 수 없습니까?
나에게는 많은 도움이되는 수업이 있지만 자동으로 호출하는 방법을 모른다. 이 컨텍스트에서 자동으로 의미하는 것은 : IRB를 시작할 때, 그리고 메서드 나 변수가 아닌 무언가를 입력 할 때, 내가 선택한 사용자 지정 메서드를 호출하고 싶습니다.
rescue
또는 method_missing
중 하나를 통해 느슨하게 알 수 있지만 어느 쪽을 할 것인지 잘 모르겠습니다. 누군가가 "foo"와 같은 IRB에 알려지지 않은 메서드를 입력하면 IRB (또는 irbrc) 메서드를 호출하는 방법을 보여줄 수 있습니까?
거의 완벽합니다. 한 가지 질문이 있습니다. 원래 오류 메시지는 어디에 있습니까? 예를 들어, irb에 "foo"라고 입력하면, NameError : undefined 지역 변수 또는 main : Object에 대한 메소드'foo '를 얻습니다. 그러나 method_missing을 사용하면 오류가 완전히 사라진 것으로 보입니다. – shevy
정상적인 NoMethodError가 다시 발생되기를 원하면 메소드 정의의 맨 끝에'super' (괄호 안 함)를 던질 수 있습니다. –