Version française
Home     About     Download     Resources     Contact us    
Browse thread
[Caml-list] string buffer as (in|out)_channel
[ Home ] [ Index: by date | by threads ]
[ Search: ]

[ Message by date: previous | next ] [ Message in thread: previous | next ] [ Thread: previous | next ]
Date: -- (:)
From: Yaron M. Minsky <yminsky@c...>
Subject: Re: [Caml-list] string buffer as (in|out)_channel
I think this is the kind of place where it would make sense to use the
object system.  That is, in addition to the low-level in_channel and
out_channel, which essentially serve as proxies for unix file-descriptor
based channels, there should be I/O objects with a standard signature
for files, strings, buffers, etc.  I actually have done a simple version
of this for myself as part of the SKS project, but I think something
along these lines would be useful as a standard part of ocaml, including
integration with printf and other places in the standard library that
use I/O.  

As for your precise question, I don't myself know of any way to convert
a Buffer.t to an i/o channel.

y

On Thu, 2003-07-17 at 03:05, Chris Hecker wrote:
> Is there any way to do something similar to the C++ string stream stuff, 
> where you treat strings (or Buffer.t's) as in_ or out_channels?  The Format 
> module has a formatter for strings, but there doesn't seem to be a way to 
> do it with Pervasives.  Something like:
> 
> val out_channel_of_buffer : Buffer.t -> out_channel
> val in_channel_of_buffer : Buffer.t -> in_channel
> 
> and maybe _of_string versions too (probably necessary because you can't 
> convert a string to a buffer for the in_channel), which fill up and don't 
> expand.
> 
> It'd be very useful to be able to do this.
> 
> Thanks,
> Chris
> 
> PS.  Please cc me on replies, I temporarily unsubscribed from the list, thanks!
> 
> -------------------
> To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
> Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
> Beginner's list: http://groups.yahoo.com/group/ocaml_beginners
-- 
|--------/            Yaron M. Minsky              \--------|
|--------\ http://www.cs.cornell.edu/home/yminsky/ /--------|

Open PGP --- KeyID B1FFD916 (new key as of Dec 4th)
Fingerprint: 5BF6 83E1 0CE3 1043 95D8 F8D5 9F12 B3A9 B1FF D916



-------------------
To unsubscribe, mail caml-list-request@inria.fr Archives: http://caml.inria.fr
Bug reports: http://caml.inria.fr/bin/caml-bugs FAQ: http://caml.inria.fr/FAQ/
Beginner's list: http://groups.yahoo.com/group/ocaml_beginners