Sha256: d22f76d0a80d89e0285d4a194fe648b2bd653a959cc1bd7ec867da3c5517d199

Contents?: true

Size: 873 Bytes

Versions: 20

Compression:

Stored size: 873 Bytes

Contents

# frozen_string_literal: true
require_relative '../../puppet/property/list'

module Puppet
  class Property
    # This subclass of {Puppet::Property} manages an ordered list of values.
    # The maintained order is the order defined by the 'current' set of values (i.e. the
    # original order is not disrupted). Any additions are added after the current values
    # in their given order).
    #
    # For an unordered list see {Puppet::Property::List}.
    #
    class OrderedList < List

      def add_should_with_current(should, current)
        if current.is_a?(Array)
          #tricky trick
          #Preserve all the current items in the list
          #but move them to the back of the line
          should = should + (current - should)
        end
        should
      end

      def dearrayify(array)
        array.join(delimiter)
      end
    end
  end
end

Version data entries

20 entries across 20 versions & 1 rubygems

Version Path
puppet-8.3.0 lib/puppet/property/ordered_list.rb
puppet-8.3.0-x86-mingw32 lib/puppet/property/ordered_list.rb
puppet-8.3.0-x64-mingw32 lib/puppet/property/ordered_list.rb
puppet-8.3.0-universal-darwin lib/puppet/property/ordered_list.rb
puppet-8.3.1 lib/puppet/property/ordered_list.rb
puppet-8.3.1-x86-mingw32 lib/puppet/property/ordered_list.rb
puppet-8.3.1-x64-mingw32 lib/puppet/property/ordered_list.rb
puppet-8.3.1-universal-darwin lib/puppet/property/ordered_list.rb
puppet-8.2.0 lib/puppet/property/ordered_list.rb
puppet-8.2.0-x86-mingw32 lib/puppet/property/ordered_list.rb
puppet-8.2.0-x64-mingw32 lib/puppet/property/ordered_list.rb
puppet-8.2.0-universal-darwin lib/puppet/property/ordered_list.rb
puppet-8.1.0 lib/puppet/property/ordered_list.rb
puppet-8.1.0-x86-mingw32 lib/puppet/property/ordered_list.rb
puppet-8.1.0-x64-mingw32 lib/puppet/property/ordered_list.rb
puppet-8.1.0-universal-darwin lib/puppet/property/ordered_list.rb
puppet-8.0.1 lib/puppet/property/ordered_list.rb
puppet-8.0.1-x86-mingw32 lib/puppet/property/ordered_list.rb
puppet-8.0.1-x64-mingw32 lib/puppet/property/ordered_list.rb
puppet-8.0.1-universal-darwin lib/puppet/property/ordered_list.rb