Class
The result of parsing a pack template.
Attributes
Read
A list of the directives in the template.
Read
The encoding of the template.
Class Methods
lib/prism/pack.rb
View on GitHub
# File tmp/rubies/ruby-3.4.0-preview1/lib/prism/pack.rb, line 206
def initialize(directives, encoding)
@directives = directives
@encoding = encoding
end
Create a new Format
with the given directives and encoding.
Instance Methods
#
lib/prism/pack.rb
View on GitHub
# File tmp/rubies/ruby-3.4.0-preview1/lib/prism/pack.rb, line 212
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
# @type var source_width: Integer
" #{source.ljust(source_width)} #{directive.describe}"
end
(["Directives:"] + directive_lines + ["Encoding:", " #{encoding}"]).join("\n")
end
Provide a human-readable description of the format.