[#10209] Market for XML Web stuff — Matt Sergeant <matt@...>

I'm trying to get a handle on what the size of the market for AxKit would be

15 messages 2001/02/01

[#10238] RFC: RubyVM (long) — Robert Feldt <feldt@...>

Hi,

20 messages 2001/02/01
[#10364] Re: RFC: RubyVM (long) — Mathieu Bouchard <matju@...> 2001/02/05

[#10708] Suggestion for threading model — Stephen White <spwhite@...>

I've been playing around with multi-threading. I notice that there are

11 messages 2001/02/11

[#10853] Re: RubyChangeRequest #U002: new proper name for Hash#indexes, Array#indexes — "Mike Wilson" <wmwilson01@...>

10 messages 2001/02/14

[#11037] to_s and << — "Brent Rowland" <tarod@...>

list = [1, 2.3, 'four', false]

15 messages 2001/02/18

[#11094] Re: Summary: RCR #U002 - proper new name fo r indexes — Aleksi Niemel<aleksi.niemela@...>

> On Mon, 19 Feb 2001, Yukihiro Matsumoto wrote:

12 messages 2001/02/19

[#11131] Re: Summary: RCR #U002 - proper new name fo r indexes — "Conrad Schneiker" <schneik@...>

Robert Feldt wrote:

10 messages 2001/02/19

[#11251] Programming Ruby is now online — Dave Thomas <Dave@...>

36 messages 2001/02/21

[#11469] XML-RPC and KDE — schuerig@... (Michael Schuerig)

23 messages 2001/02/24
[#11490] Re: XML-RPC and KDE — schuerig@... (Michael Schuerig) 2001/02/24

Michael Neumann <neumann@s-direktnet.de> wrote:

[#11491] Negative Reviews for Ruby and Programming Ruby — Jim Freeze <jim@...> 2001/02/24

Hi all:

[#11633] RCR: shortcut for instance variable initialization — Dave Thomas <Dave@...>

13 messages 2001/02/26

[#11652] RE: RCR: shortcut for instance variable initialization — Michael Davis <mdavis@...>

I like it!

14 messages 2001/02/27

[#11700] Starting Once Again — Ron Jeffries <ronjeffries@...>

OK, I'm starting again with Ruby. I'm just assuming that I've

31 messages 2001/02/27
[#11712] RE: Starting Once Again — "Aaron Hinni" <aaron@...> 2001/02/27

> 2. So far I think running under TextPad will be better than running

[#11726] Re: Starting Once Again — Aleksi Niemel<zak@...> 2001/02/28

On Wed, 28 Feb 2001, Aaron Hinni wrote:

[ruby-talk:10430] Re: Problems creating persistent objects

From: "Danny Sofer" <danny@...>
Date: 2001-02-06 16:40:02 UTC
List: ruby-talk #10430
"Danny Sofer" <danny@sofer.com> wrote

> Here's the synopsis:
>

<snip>

Thanks for the responses. they were very helpful. there follows an amended
code snippet.

'Storage' can be used with any class that includes and extends it. the only
requirement is that there be a publically readable instance variable called
f, that is the first argument of any call to 'new'.

ObjectSpace.each_object is used to pick up the object and save it before it
gets destroyed. this seems a bit of a kludge, but it's the only way i could
work out to reference the object. is there a better way?

module Storage
  def new(f, *args)
    ObjectSpace.define_finalizer(self, proc {finalizer(f)} )
    if File.exists?(f)
      File.open(f) {|fl| return Marshal.load(fl) }
    else
      super
    end
  end
  def finalizer(f)
    ObjectSpace.each_object(Storage) do |s|
      puts s.inspect
      if s.f == f then File.open(f, "w") {|fl| Marshal.dump(s, fl)} end
    end
  end
end

class Obj
  include Storage    # mix in Storage
  extend Storage     # make class methods (i.e. new) available
  attr_reader :f
  def initialize(f, m='')
    @f = f
    @m = m
  end
end

o = Obj.new('.test', 'hello' )

thanks again for your time and bandwidth.

danny


In This Thread

Prev Next