Sha256: 3ebd3cf1dcd4209c63b54c23cc0b13393b96f0cc9628f4a291d4dc4e2a031d57

Contents?: true

Size: 419 Bytes

Versions: 4

Compression:

Stored size: 419 Bytes

Contents

module Ramaze
  class Fiber < ::Fiber
    # initialize isn't being called, so we have to hook into ::new
    def self.new(*args)
      instance = super
      instance.state = {}
      instance
    end

    attr_accessor :state

    def [](key)
      @state[key]
    end

    def []=(key, value)
      @state[key] = value
    end

    def key?(key)
      @state.key?(key)
    end
  end if defined?(::Fiber)
end # Ramaze

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
ramaze-2012.04.14 lib/ramaze/snippets/ramaze/fiber.rb
ramaze-2012.03.07 lib/ramaze/snippets/ramaze/fiber.rb
ramaze-2011.12.28 lib/ramaze/snippets/ramaze/fiber.rb
ramaze-2011.10.23 lib/ramaze/snippets/ramaze/fiber.rb