Sha256: e84669eb7d52719e04cac0eb9578b6716785e19543f40718b7481a1d6328db66
Contents?: true
Size: 699 Bytes
Versions: 4
Compression:
Stored size: 699 Bytes
Contents
module Rserve module With2DSizes attr_reader :column_size, :row_size def sizes=(sizes) raise ArgumentError, "sizes must be of size 2" unless (sizes.size == 2) raise ArgumentError, "mismatch between provided size info and actual number of elements" unless self.size == (sizes[0] * sizes[1]) @row_size = sizes[0] @column_size = sizes[1] end def at_2d(i,j) self[i + j * row_size] end def row(i) return nil unless (-row_size...row_size) === i each_slice(row_size).map {|col| col[i]} end def column(j) return nil unless (-column_size...column_size) === j self[(j * row_size), row_size] end end end
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
rserve-client-0.3.5 | lib/rserve/with2dsizes.rb |
rserve-client-0.3.3 | lib/rserve/with2dsizes.rb |
rserve-client-0.3.2 | lib/rserve/with2dsizes.rb |
rserve-client-0.3.1 | lib/rserve/with2dsizes.rb |