# File lib/criteria/array.rb, line 22
    def select(*args)
      result = []
      filter = (args.size > 0)

      @array.each {
        | o |
        if(self._apply(o))
          if filter
            a = []
            args.each { |m| a << o.__send__(m) }
            result << a
          else
            result << o
          end
        end
      }

      return result
    end