Module: Psych::Merge::DebugLogger
- Extended by:
- Ast::Merge::DebugLogger
- Defined in:
- lib/psych/merge/debug_logger.rb
Overview
Debug logging utility for Psych::Merge.
Extends the base Ast::Merge::DebugLogger with Psych-specific configuration.
Class Method Summary collapse
-
.log_node(node, label: "Node") ⇒ Object
Override log_node to handle Psych-specific node types.
Class Method Details
.log_node(node, label: "Node") ⇒ Object
Override log_node to handle Psych-specific node types.
26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
# File 'lib/psych/merge/debug_logger.rb', line 26 def log_node(node, label: "Node") return unless enabled? info = case node when Psych::Merge::FreezeNode {type: "FreezeNode", lines: "#{node.start_line}..#{node.end_line}"} when Psych::Merge::MappingEntry {type: "MappingEntry", key: node.key_name, lines: "#{node.start_line}..#{node.end_line}"} when Psych::Merge::NodeWrapper {type: node.node.class.name.split("::").last, lines: "#{node.start_line}..#{node.end_line}"} else extract_node_info(node) end debug(label, info) end |