Class: Marko::Tasks::Assemble

Inherits:
Object
  • Object
show all
Defined in:
lib/marko/tasks/assemble.rb

Overview

Assemble tree

Instance Method Summary collapse

Constructor Details

#initialize(config) ⇒ Assemble

Returns a new instance of Assemble.



9
10
11
12
13
# File 'lib/marko/tasks/assemble.rb', line 9

def initialize(config)
  @config = config
   = { id: '0' }
    .merge(config.to_h.slice(:order_index, :author))
end

Instance Method Details

#call(topics) ⇒ Model::Topic

Parameters:

Returns:



17
18
19
20
21
22
23
24
25
# File 'lib/marko/tasks/assemble.rb', line 17

def call(topics)
  @artifact = Model::Topic.new(
    @config.title, '', **)
  
  topics.each{ @artifact.add(it) }
  @artifact.each{ maybe_move(it) }
  inject_ids
  @artifact
end