class ViewModel::AbstractErrorWithBlame

For errors associated with specific viewmodel nodes, include metadata describing the node to blame.

Attributes

nodes[R]

Public Class Methods

new(blame_nodes) click to toggle source
Calls superclass method ViewModel::AbstractError::new
# File lib/view_model/error.rb, line 98
def initialize(blame_nodes)
  @nodes = Array.wrap(blame_nodes)
  unless @nodes.all? { |n| n.is_a?(ViewModel::Reference) }
    raise ArgumentError.new("#{self.class.name}: 'blame_nodes' must all be of type ViewModel::Reference")
  end

  super()
end

Public Instance Methods

meta() click to toggle source
# File lib/view_model/error.rb, line 107
def meta
  {
    nodes: format_references(nodes),
  }
end