Sha256: 2761e55259590be963eb0d04e6cebc954ed21bd63b4bcbf7b6ef1abab31f6076

Contents?: true

Size: 1022 Bytes

Versions: 2

Compression:

Stored size: 1022 Bytes

Contents

module Saulabs

  module Reportable

    # A result set as it is returned by the report methods.
    # This is basically a subclass of +Array+ that adds two
    # attributes, +model_name+ and +report_name+ that store
    # the name of the model and the report the result set
    # was generated from.
    #
    class ResultSet < ::Array

      # the name of the model the result set is based on
      #
      attr_reader :model_name

      # the name of the report the result is based on
      #
      attr_reader :report_name

      # Initializes a new result set.
      #
      # @param [Array] array
      #   the array that is the actual result
      # @param [String] model_name
      #   the name of the model the result set is based on
      # @param [String] report_name
      #   the name of the report the result is based on
      #
      def initialize(array, model_name, report_name)
        super(array)
        @model_name  = model_name
        @report_name = report_name.to_s
      end

    end

  end

end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
reportable-1.1.2 lib/saulabs/reportable/result_set.rb
reportable-1.1.0 lib/saulabs/reportable/result_set.rb