Class: Milestoner::Builders::Feed

Inherits:
Object
  • Object
show all
Defined in:
lib/milestoner/builders/feed.rb

Overview

Builds syndicated feed output.

Instance Method Summary collapse

Constructor Details

#initialize(tagger: Commits::Tagger.new, syndicator: Syndication::Builder.new) ⇒ Feed

Returns a new instance of Feed.



14
15
16
17
18
# File 'lib/milestoner/builders/feed.rb', line 14

def initialize(tagger: Commits::Tagger.new, syndicator: Syndication::Builder.new, **)
  @tagger = tagger
  @syndicator = syndicator
  super(**)
end

Instance Method Details

#callObject



20
21
22
23
24
25
# File 'lib/milestoner/builders/feed.rb', line 20

def call
  tagger.call
        .bind { |tags| syndicator.call tags }
        .fmap { |body| write body }
        .alt_map { |message| failure message }
end