Home My Page Projects Code Snippets Project Openings SML/NJ
Summary Activity Forums Tracker Lists Tasks Docs Surveys News SCM Files

SCM Repository

[smlnj] View of /sml/releases/release-110.37/src/ml-nlffi-lib/zstring.sig
ViewVC logotype

View of /sml/releases/release-110.37/src/ml-nlffi-lib/zstring.sig

Parent Directory Parent Directory | Revision Log Revision Log


Revision 994 - (download) (as text) (annotate)
Fri Nov 23 02:37:10 2001 UTC (19 years ago)
File size: 917 byte(s)
This commit was manufactured by cvs2svn to create tag
'release-110.37'.
(*
 * Functions for translating between 0-terminated C strings and native
 * ML strings.
 *
 *  (C) 2001, Lucent Technologies, Bell Laboratories
 *
 * author: Matthias Blume (blume@research.bell-labs.com)
 *)
signature ZSTRING = sig

    type 'c zstring = (C.uchar, 'c) C.ptr
    type 'c zstring' = (C.uchar, 'c) C.ptr'

    (* the C strlen function *)
    val length : 'c zstring -> int
    val length' : 'c zstring' -> int

    (* make ML string from 0-terminated C string *)
    val toML : 'c zstring -> string
    val toML' : 'c zstring' -> string

    (* Copy contents of ML string into C string and add terminating 0. *)
    val cpML : { from: string, to: C.rw zstring } -> unit
    val cpML' : { from: string, to: C.rw zstring' } -> unit

    (* Make C-duplicate of ML string (allocate memory and then copy). *)
    val dupML : string -> C.rw zstring option
    val dupML' : string -> C.rw zstring' option
end

root@smlnj-gforge.cs.uchicago.edu
ViewVC Help
Powered by ViewVC 1.0.0