module NetSuite
  module Records
    class CreditMemoItemList
      include Namespaces::TranCust

      def initialize(attributes = {})
        case attributes[:item]
        when Hash
          items << CreditMemoItem.new(attributes[:item])
        when Array
          attributes[:item].each { |item| items << CreditMemoItem.new(item) }
        end
      end

      def items
        @items ||= []
      end

      def to_record
        { "#{record_namespace}:item" => items.map(&:to_record) }
      end
    end
  end
end

module NetSuite
  module Records
    class CreditMemoItemList < Support::Sublist
      include Namespaces::TranCust

      sublist :item, CreditMemoItem

      alias :items :item
    end
  end
end

Use common sublist class for credit memo item list
Use common sublist class for credit memo item list
