Sha256: 3aa1987994dc4dd3026b64536e7c9674686c2159ca063f6cf19b6aa9cf1e0303

Contents?: true

Size: 650 Bytes

Versions: 1

Compression:

Stored size: 650 Bytes

Contents

class Array
  def __basetype
    :array
  end

  def to_database_view(depth, ranges = {}, params = {})
    obj = super

    if depth > 0
      obj[:elements] = {}
      obj[:elementsSize] = self.size

      range_from = ranges[:elements] ? Integer(ranges[:elements][0]) : 1
      range_to = ranges[:elements] ? Integer(ranges[:elements][1]) : 10

      if (params[:allElements])
        range_from = 1
        range_to = self.size
      end

      ((range_from - 1)..[range_to - 1, self.size - 1].min).each do |index|
        obj[:elements][index + 1] = self[index].to_database_view(depth - 1, {}, params)
      end
    end

    return obj
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
mdbe-0.1.0 lib/mdbe/database_views/array.rb