Hi Mark,
The metadata points to the source:
user> (meta #'with-open)
{:doc "bindings => name init\n\n Evaluates body in a try expression
with name bound to the value of\n init, and a finally clause that
calls (.close name).", :ns #<Namespace clojure.core>, :arglists
([bindings & body]), :file "core.clj", :name with-open, :macro
true, :line 1752}
If you look through the archive I believe somebody posted code that
uses the metadata to locate the source and display it at the REPL.
Stu
>
> On Wed, Nov 19, 2008 at 2:45 PM, prhlava <[EMAIL PROTECTED]>
> wrote:
>>
>>
>> Hello again,
>>
>> Thank you all for the posts and explanations,
>>
>> After getting the clojure SVN version and few tweaks in the code, the
>> working result looks like:
>>
>> (with-open [ofile (new java.io.FileOutputStream
>> (str result-directory
>> "/"
>> (make-filename x y))
>> (boolean true))] ; I am
>> appending only
>> (. ofile write
>> (into-array Byte/TYPE
>> [(byte (bit-shift-right pix
>> 16))
>> (byte (bit-shift-right pix
>> 8))
>> (byte pix)])) ; the pix is
>> of the Integer type
>
> It looks like with-open accepts any number of bindings. Does it just
> call close on the first one when the body finishes or on all of them?
>
> If I wanted to figure this out for myself, how would I find the source
> code for with-open?
>
> --
> R. Mark Volkmann
> Object Computing, Inc.
>
> >
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"Clojure" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
-~----------~----~----~----~------~----~------~--~---