Module: Pageboy
- Defined in:
- lib/pageboy.rb,
lib/pageboy/page.rb,
lib/pageboy/config.rb,
lib/pageboy/version.rb,
lib/pageboy/collator.rb,
lib/pageboy/page_turner/base.rb,
lib/pageboy/page_turner/array.rb,
lib/pageboy/page_turner/link_header.rb
Defined Under Namespace
Modules: Config, PageTurner
Classes: Collator, Page
Constant Summary
collapse
- VERSION =
'0.1.1'
Class Method Summary
collapse
Class Method Details
.each(target, opts = {}, &block) ⇒ Object
17
18
19
20
|
# File 'lib/pageboy.rb', line 17
def self.each(target, opts={}, &block)
page_turner = paginate(target, opts)
Pageboy::Collator.new(page_turner).each(&block)
end
|
.map(target, opts = {}, &block) ⇒ Object
22
23
24
25
|
# File 'lib/pageboy.rb', line 22
def self.map(target, opts={}, &block)
page_turner = paginate(target, opts)
Pageboy::Collator.new(page_turner).map(&block)
end
|
.paginate(target, opts = {}) ⇒ Object
8
9
10
11
12
13
14
15
|
# File 'lib/pageboy.rb', line 8
def self.paginate(target, opts={})
Pageboy::Config.turners.each_pair do |page_turner_class, matchers|
matchers.each do |matcher|
return page_turner_class.new(target, opts) if matcher.call(target)
end
end
raise "could not find suitable PageTurner for #{target}"
end
|
.register_page_turner(klass, &block) ⇒ Object
27
28
29
30
|
# File 'lib/pageboy.rb', line 27
def self.register_page_turner(klass, &block)
Pageboy::Config.turners[klass] ||= []
Pageboy::Config.turners[klass] << block
end
|