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
464 def initialize(explain_options = false, only_explain_options = false)
465   @current = self
466   @explain_options = explain_options
467   @only_explain_options = only_explain_options
468 end

Public Instance Methods

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