Class: WebCrawler::Parsers::Mapper::Filter
- Inherits:
-
Object
- Object
- WebCrawler::Parsers::Mapper::Filter
- Defined in:
- lib/web_crawler/parsers/mapper.rb
Instance Method Summary collapse
- #call(*args, &blk) ⇒ Object
-
#initialize(method, context) ⇒ Filter
constructor
A new instance of Filter.
Constructor Details
#initialize(method, context) ⇒ Filter
Returns a new instance of Filter.
4 5 6 |
# File 'lib/web_crawler/parsers/mapper.rb', line 4 def initialize(method, context) @method, @context = method, context end |
Instance Method Details
#call(*args, &blk) ⇒ Object
8 9 10 11 12 13 |
# File 'lib/web_crawler/parsers/mapper.rb', line 8 def call(*args, &blk) return @context.send(@method, *args, &blk) if @method.is_a? Symbol return @method.call(*args, &blk) if @method.respond_to? :call return args.size == 1 ? args.first : args if @method.nil? raise ArgumentError, "#{@method} must be a Symbol or Object which respond with in :call or nil" end |