Ruby의 기존 Enumerable 모듈에 사용자 정의 메서드를 추가하려면 어떻게합니까? 저는 Ruby 2.0을 사용하고 있습니다.Enumerable 모듈에 메서드를 추가하는 방법은 무엇입니까?
답변
다른 모든 모듈에 메소드를 추가하는 것과 같은 방법입니다.
당신은 당신이 Enumerable
을 모듈에 방법 histogram
를 추가 할 경우, 그래서
module Foo
def bar(baz, quux)
# code code code
end
end
쓰기는
module Enumerable
# Counts the number of occurrences of each unique object in `self`.
#
# @return [Hash<E, Integer>] a `Hash` of objects mapped to number of occurrences in `self`.
def histogram
group_by(&:itself).map {|k, v| [k, v.size] }.to_hash
end
end
에서 쓰기 Foo
모듈에 매개 변수 baz
및 quux
와 방법 bar
를 추가하려면 Ruby는 이라는 개념을 통합 한 monkey-patching
을 사용할 수 있습니다. 즉, Ruby의 클래스는 언제든지 수정할 수 있습니다. 예를 들어, 숫자 클래스에 double 메소드를 작성할 수 있습니다.
class Integer < Numeric
def self.double
self * 2
end
end
지금 당신은 내가 당신이 쓴 것처럼 열거 가능한 모듈의 방법을 입력,이
네,하지만 그 코드를 어디서 써야하나요? Tnx Tom –
원하는 곳 어디에서라도 –
시도 할 때 irb를 통해 실행하려면 "NoMethodError : u 정의 된 메소드'my_each ' ". 나는 무엇인가를 요구하거나 볼 곳을 말해야합니까? Tnx Tom –
- 1. Enumerable 메서드 내에 조건문을 추가하는 방법은 무엇입니까?
- 2. Delegating Handler를 모듈에 추가하는 방법은 무엇입니까?
- 3. prestashop 1.5의 모듈에 CSS를 추가하는 방법은 무엇입니까?
- 4. 다른 모듈에 런타임 종속성을 추가하는 방법은 무엇입니까?
- 5. 모듈에 탭 메뉴 항목을 추가하는 방법은 무엇입니까?
- 6. 모듈에 혼합 된 메서드를 올바르게 재정의하는 방법은 무엇입니까?
- 7. 라이브러리에 확장 메서드를 추가하는 방법은 무엇입니까?
- 8. Slick 테이블에 메서드를 추가하는 방법은 무엇입니까?
- 9. ListView에서 onItemClick 메서드를 추가하는 방법은 무엇입니까?
- 10. Paper_trail의 버전 모델에 메서드를 추가하는 방법은 무엇입니까?
- 11. 클래스 메서드를 동적으로 추가하는 방법은 무엇입니까?
- 12. aspxclienttextbox에 새 메서드를 추가하는 방법은 무엇입니까?
- 13. click 메서드를 사용하여 요소 내부에서 클릭 메서드를 추가하는 방법은 무엇입니까?
- 14. Enumerable # all에 적합한 사용 사례는 무엇입니까? Ruby에서 각각 Enumerable #?
- 15. 모듈에 컨트롤을 추가하는 방법
- 16. DNN의 편집기를 사용하여 HTML/CSS를 추가하는 방법은 무엇입니까? 모듈에 의존하지 않고 마크 업을 추가하는 방법은 무엇입니까?
- 17. 기존 java Maven 모듈을 Grails Maven 모듈에 추가하는 방법은 무엇입니까?
- 18. DNN의 모듈에 "편집 페이지"링크를 추가하는 방법은 무엇입니까?
- 19. 무들 데이터베이스 모듈에 새 양식 필드를 추가하는 방법은 무엇입니까?
- 20. 모듈에 사용자 메뉴 항목을 추가하는 방법은 무엇입니까? 내가이 그것을 시도
- 21. Wordpress 포함 및 로그인 관리를 맞춤 모듈에 추가하는 방법은 무엇입니까?
- 22. swig 생성 루비 모듈에 기능을 추가하는 가장 좋은 방법은 무엇입니까?
- 23. Rails Gems 작성하기 : 기존 레일 모듈에 추가하는 올바른 방법은 무엇입니까?
- 24. 맞춤 모듈에 가져 오기 옵션을 추가하는 방법은 무엇입니까?
- 25. Magento 코어 모듈에 컨트롤러를 추가하는 가장 좋은 방법은 무엇입니까
- 26. Enumerable 포함 요구 사항
- 27. 모듈에 메뉴를 할당하는 방법은 무엇입니까?
- 28. 변수를 모듈에 전달하는 방법은 무엇입니까?
- 29. HTML 모듈에 클래스를 추가하는 방법
- 30. 티타늄 모듈에 aar를 추가하는 방법
르그 데 도움이
희망 번호에 이중 메서드를 호출 할 수 있습니다,하지만 난 여전히를 얻을 수 오류 "NoMethodError : 정의되지 않은 메소드'my_each '" "그래서 내가 뭘 잘못하고 있니? Tnx Tom –