Capture code in a block

Greetings,

How might I capture the code in a block so that I can serialize it for
later use? So for example …

file = CodeFile.new( ‘something.rb’)

file.capture do
puts ‘Hello World’
end

… which prompts a file to be created with …

puts ‘Hello World’

Any thoughts how this might be accomplished?

]{

Quoth Kristoph:

… which prompts a file to be created with …

puts ‘Hello World’

Any thoughts how this might be accomplished?

Do you actually want a literal “puts ‘Hello World’” in the file, or just
the
string “Hello World”?

def my_method &block
@block = block
end

def my_other_method
@block.call
end

Something like that?

HTH,

Konrad,

Yes I want to capture and serialize the actual code into a file (and
not actually execute that code until some later juncture).

Basically I just want the contents of a block as a string, without
executing it.

Kristoph