Sha256: ac79546af381ec39d8ae33803bacdd6a348d76ea37de860d46685d5bf6437a94
Contents?: true
Size: 1.21 KB
Versions: 8
Compression:
Stored size: 1.21 KB
Contents
# frozen_string_literal: true # Released under the MIT License. # Copyright, 2017, by Goro Fuji. # Copyright, 2017-2019, by Garen Torikian. # Copyright, 2020, by Olle Jonsson. # Copyright, 2020-2023, by Samuel Williams. require 'pp' module Markly class Node module Inspect PP_INDENT_SIZE = 2 def inspect PP.pp(self, +'', Float::INFINITY) end # @param printer [PrettyPrint] pp def pretty_print(printer) printer.group(PP_INDENT_SIZE, "#<#{self.class}(#{type}):", '>') do printer.breakable attrs = %i[ source_position string_content url title header_level list_type list_start list_tight fence_info ].map do |name| begin [name, __send__(name)] rescue Error nil end end.compact printer.seplist(attrs) do |name, value| printer.text "#{name}=" printer.pp value end if first_child printer.breakable printer.group(PP_INDENT_SIZE) do children = [] node = first_child while node children << node node = node.next end printer.text 'children=' printer.pp children end end end end end end end
Version data entries
8 entries across 8 versions & 1 rubygems