class Puppet::Pops::Lookup::Explainer

Public Class Methods

new(explain_options = false, only_explain_options = false) click to toggle source
    # File lib/puppet/pops/lookup/explainer.rb
463 def initialize(explain_options = false, only_explain_options = false)
464   @current = self
465   @explain_options = explain_options
466   @only_explain_options = only_explain_options
467 end

Public Instance Methods

accept_found(key, value) click to toggle source
    # File lib/puppet/pops/lookup/explainer.rb
521 def accept_found(key, value)
522   @current.found(key, value)
523 end
accept_found_in_defaults(key, value) click to toggle source
    # File lib/puppet/pops/lookup/explainer.rb
517 def accept_found_in_defaults(key, value)
518   @current.found_in_defaults(key, value)
519 end
accept_found_in_overrides(key, value) click to toggle source
    # File lib/puppet/pops/lookup/explainer.rb
513 def accept_found_in_overrides(key, value)
514   @current.found_in_overrides(key, value)
515 end
accept_location_not_found() click to toggle source
    # File lib/puppet/pops/lookup/explainer.rb
533 def accept_location_not_found
534   @current.location_not_found
535 end
accept_merge_source(merge_source) click to toggle source
    # File lib/puppet/pops/lookup/explainer.rb
525 def accept_merge_source(merge_source)
526   @current.branches << ExplainMergeSource.new(merge_source)
527 end
accept_module_not_found(module_name) click to toggle source
    # File lib/puppet/pops/lookup/explainer.rb
537 def accept_module_not_found(module_name)
538   push(:module, module_name)
539   @current.module_not_found
540   pop
541 end
accept_module_provider_not_found(module_name) click to toggle source
    # File lib/puppet/pops/lookup/explainer.rb
543 def accept_module_provider_not_found(module_name)
544   push(:module, module_name)
545   @current.module_provider_not_found
546   pop
547 end
accept_not_found(key) click to toggle source
    # File lib/puppet/pops/lookup/explainer.rb
529 def accept_not_found(key)
530   @current.not_found(key)
531 end
accept_result(result) click to toggle source
    # File lib/puppet/pops/lookup/explainer.rb
549 def accept_result(result)
550   @current.result(result)
551 end
accept_text(text) click to toggle source
    # File lib/puppet/pops/lookup/explainer.rb
553 def accept_text(text)
554   @current.text(text)
555 end
dump_on(io, indent, first_indent) click to toggle source
    # File lib/puppet/pops/lookup/explainer.rb
557 def dump_on(io, indent, first_indent)
558   branches.each { |b| b.dump_on(io, indent, first_indent) }
559   dump_texts(io, indent)
560 end
explain_options?() click to toggle source
    # File lib/puppet/pops/lookup/explainer.rb
505 def explain_options?
506   @explain_options
507 end
only_explain_options?() click to toggle source
    # File lib/puppet/pops/lookup/explainer.rb
501 def only_explain_options?
502   @only_explain_options
503 end
pop() click to toggle source
    # File lib/puppet/pops/lookup/explainer.rb
509 def pop
510   @current = @current.parent unless @current.parent.nil?
511 end
push(qualifier_type, qualifier) click to toggle source
    # File lib/puppet/pops/lookup/explainer.rb
469 def push(qualifier_type, qualifier)
470   node = case (qualifier_type)
471     when :global
472      ExplainGlobal.new(@current, qualifier)
473     when :location
474       ExplainLocation.new(@current, qualifier)
475     when :interpolate
476       ExplainInterpolate.new(@current, qualifier)
477     when :data_provider
478       ExplainDataProvider.new(@current, qualifier)
479     when :merge
480       ExplainMerge.new(@current, qualifier)
481     when :module
482       ExplainModule.new(@current, qualifier)
483     when :scope
484       ExplainScope.new(@current, qualifier)
485     when :sub_lookup
486       ExplainSubLookup.new(@current, qualifier)
487     when :segment
488       ExplainKeySegment.new(@current, qualifier)
489     when :meta, :data
490       ExplainTop.new(@current, qualifier_type, qualifier)
491     when :invalid_key
492       ExplainInvalidKey.new(@current, qualifier)
493     else
494       #TRANSLATORS 'Explain' is referring to the 'Explainer' class and should not be translated
495       raise ArgumentError, _("Unknown Explain type %{qualifier_type}") % { qualifier_type: qualifier_type }
496     end
497   @current.branches << node
498   @current = node
499 end
to_hash() click to toggle source
    # File lib/puppet/pops/lookup/explainer.rb
562 def to_hash
563   branches.size == 1 ? branches[0].to_hash : super
564 end