Sha256: 86421745e3d306704093b6ea87828120db5ab6007fe3742da8a745de3e78e603

Contents?: true

Size: 592 Bytes

Versions: 4

Compression:

Stored size: 592 Bytes

Contents

require 'delegate'

module Saneitized

  class Array < ::SimpleDelegator

    def initialize(array = [], options = {})
      @options = options
      super(array.map{|item| Saneitized.convert(item, options)})
      self
    end

    def []=(index, value)
      super index, Saneitized.convert(value, @options)
    end

    def << (value)
      super Saneitized.convert(value, @options)
    end

    def push(*args)
      raise NotImplementedError
    end

    def unshift(*args)
      raise NotImplementedError
    end

    def insert(*args)
      raise NotImplementedError
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
saneitized-2.0.0 lib/saneitized/array.rb
saneitized-1.5.0 lib/saneitized/array.rb
saneitized-1.4.0 lib/saneitized/array.rb
saneitized-1.3.2 lib/saneitized/array.rb