Class: Ace::Support::Items::Molecules::BaseFormatter

Inherits:
Object
  • Object
show all
Defined in:
lib/ace/support/items/molecules/base_formatter.rb

Overview

Minimal default formatter for item display. Gems can override with their own formatter for richer output.

Class Method Summary collapse

Class Method Details

.format_item(item, scan_result: nil) ⇒ String

Format a single item for display

Parameters:

  • item (Object)

    Item with id/title (LoadedDocument, ScanResult, etc.)

  • scan_result (ScanResult, nil) (defaults to: nil)

    Optional scan result for ID fallback

Returns:

  • (String)

    Formatted line



14
15
16
17
18
19
# File 'lib/ace/support/items/molecules/base_formatter.rb', line 14

def self.format_item(item, scan_result: nil)
  id = resolve_id(item, scan_result)
  title = resolve_title(item)

  "#{id} #{title}"
end

.format_list(items) ⇒ String

Format a list of items

Parameters:

  • items (Array)

    Items to format

Returns:

  • (String)

    Formatted list



24
25
26
27
28
# File 'lib/ace/support/items/molecules/base_formatter.rb', line 24

def self.format_list(items)
  return "No items found." if items.nil? || items.empty?

  items.map { |item| format_item(item) }.join("\n")
end