Module.method_defined?(:method)
을 사용하는 모듈에 메서드가 정의되어 있는지 확인하려고하는데 false를 반환하면 true로 returing되어야합니다.Module.method_defined (: 메서드)가 제대로 작동하지 않는 이유는 무엇입니까?
module Something
def self.another
1
end
end
Something.methods
는 '다른'은 나와 있지만 Something.method_defined?(:another)
반환 false
있습니다.
이 방법은 자체에 정의되어 있기 때문에 작동하지 않을 수 있습니까? 이 경우에 method_defined?
이외의 다른 모듈에서 메서드가 정의되어 있는지 확인하는 다른 방법이 있습니까?
아마도 나는이 잘못을 읽고 있습니다 만, 'Something.respond_to (: another)'가 아니어야합니다. 그래서'another'가 상징입니다. 그렇지 않으면'another'가 정의되지 않은 에러를 일으키지 않을까요? –