read_value

in lib/gdk/config_type/settings_array.rb [62:88]


      def read_value
        user_defined = []
        array = parent.yaml[key] ||= []
        original_array_size = array.size

        @elems = ::Array.new(length) do |i|
          yaml = array[i] ||= {}

          value = Class.new(parent.settings_klass).tap do |k|
            k.integer(:__index) { i }
            k.class_exec(i, &blk)
            
            
            
            
          end.new(key: i, parent: self, yaml: yaml)

          user_defined << value if i < original_array_size

          value
        end

        @user_value = user_defined if user_defined.any?

        @elems
      end