class Coopy::SparseSheet
Attributes
h[RW]
row[RW]
w[RW]
zero[RW]
Public Class Methods
new()
click to toggle source
# File lib/lib/coopy/sparse_sheet.rb, line 7 def initialize @h = @w = 0 end
Public Instance Methods
get(x,y)
click to toggle source
# File lib/lib/coopy/sparse_sheet.rb, line 31 def get(x,y) cursor = @row[y] return @zero if cursor == nil val = cursor[x] return @zero if val == nil val end
non_destructive_resize(w,h,zero)
click to toggle source
# File lib/lib/coopy/sparse_sheet.rb, line 25 def non_destructive_resize(w,h,zero) @w = w @h = h @zero = zero end
resize(w,h,zero)
click to toggle source
# File lib/lib/coopy/sparse_sheet.rb, line 20 def resize(w,h,zero) @row = {} self.non_destructive_resize(w,h,zero) end
set(x,y,val)
click to toggle source
# File lib/lib/coopy/sparse_sheet.rb, line 39 def set(x,y,val) cursor = @row[y] if cursor == nil cursor = {} @row[y] = cursor end cursor[x] = val end