Sha256: e84992c4b995b25af1d0ba7599a36f6369086d4f90cd1731b10f77912c4bbf3c

Contents?: true

Size: 756 Bytes

Versions: 1

Compression:

Stored size: 756 Bytes

Contents

module RelatonIeee
  class IeeeBibliographicItem < RelatonBib::BibliographicItem
    # @return [Array<RelatonIeee::Committee>]
    attr_reader :committee

    # @param committee [Array<RelatonIeee::Committee>]
    def initialize(**args)
      @committee = args.delete :committee
      super
    end

    # @param builder [Nokogiri::XML::Bilder]
    # @parma bibdata [TrueClass, FalseClass, NilClass]
    def to_xml(builder = nil, **opts)
      super do |bldr|
        if opts[:bibdata] && committee.any?
          bldr.ext do |b|
            committee.each { |c| c.to_xml b }
          end
        end
      end
    end

    # @return [Hash]
    def to_hash
      hash = super
      hash["committee"] = committee.map &:to_hash
      hash
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
relaton-ieee-1.1.0 lib/relaton_ieee/ieee_bibliographic_item.rb