puppetlabs/puppet · error · Puppet::Error

no method is implemented for derived #{a.label}

Error message

no method is implemented for derived #{a.label}

What it means

Error "no method is implemented for derived #{a.label}" thrown in puppetlabs/puppet.

Source

Thrown at lib/puppet/pops/types/ruby_generator.rb:296

      bld << ')'
    end
    bld << "\n  end\n"

    unless obj.parent.is_a?(PObjectType) && obj_attrs.empty?
      # Output attr_readers
      unless obj_attrs.empty?
        bld << "\n"
        obj_attrs.each { |a| bld << '  attr_reader :' << rname(a.name) << "\n" }
      end

      bld << "  attr_reader :hash\n" if obj.parent.nil?

      derived_attrs.each do |a|
        bld << "\n  def " << rname(a.name) << "\n"
        code_annotation = RubyMethod.annotate(a)
        ruby_body = code_annotation.nil? ? nil : code_annotation.body
        if ruby_body.nil?
          bld << "    raise Puppet::Error, \"no method is implemented for derived #{a.label}\"\n"
        else
          bld << '    ' << ruby_body << "\n"
        end
        bld << "  end\n"
      end

      if init_params.empty?
        bld << "\n  def initialize\n    @hash = " << obj.hash.to_s << "\n  end" if obj.parent.nil?
      else
        # Output initializer
        bld << "\n  def initialize"
        bld << '('
        non_opt.each { |ip| bld << rname(ip.name) << ', ' }
        opt.each do |ip|
          bld << rname(ip.name) << ' = '
          default_string(bld, ip)
          bld << ', '
        end

View on GitHub (pinned to e227c27540)

When it happens

Trigger: Thrown at lib/puppet/pops/types/ruby_generator.rb:296 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of puppetlabs/puppet@e227c27540 (2026-08-21). Data as JSON: /api/errors/0593d25e490b69d2. Report an issue: GitHub.