Class: RailsAiBridge::Serializers::Providers::Collaborators::RulesNotableGemsBuilder::GemEntries

Inherits:
Object
  • Object
show all
Defined in:
lib/rails_ai_bridge/serializers/providers/collaborators/rules_notable_gems_builder.rb

Overview

Formats the complete notable gems section.

Instance Method Summary collapse

Constructor Details

#initialize(gems, section_header, entry_format) ⇒ GemEntries

Returns a new instance of GemEntries.

Parameters:

  • gems (Array<Hash>)

    sorted notable gem payloads

  • section_header (String)

    section heading

  • entry_format (String)

    row format



36
37
38
39
40
# File 'lib/rails_ai_bridge/serializers/providers/collaborators/rules_notable_gems_builder.rb', line 36

def initialize(gems, section_header, entry_format)
  @gems = gems
  @section_header = section_header
  @entry_format = entry_format
end

Instance Method Details

#to_aArray<String>

Returns formatted section lines.

Returns:

  • (Array<String>)

    formatted section lines



43
44
45
46
47
# File 'lib/rails_ai_bridge/serializers/providers/collaborators/rules_notable_gems_builder.rb', line 43

def to_a
  return [] if @gems.empty?

  [@section_header, *@gems.map { |gem| GemEntry.new(gem, @entry_format).to_s }]
end