class Prism::Pack::Format

The result of parsing a pack template.

def describe

Provide a human-readable description of the format.
def describe
  source_width = directives.map { |d| d.source.inspect.length }.max
  directive_lines = directives.map do |directive|
    if directive.type == SPACE
      source = directive.source.inspect
    else
      source = directive.source
    end
    "  #{source.ljust(source_width)}  #{directive.describe}"
  end
  (["Directives:"] + directive_lines + ["Encoding:", "  #{encoding}"]).join("\n")
end

def initialize(directives, encoding)

Create a new Format with the given directives and encoding.
def initialize(directives, encoding)
  @directives = directives
  @encoding = encoding
end