module C.String

module U32 = FStar.UInt32


open FStar.HyperStack.ST

[@@ no_auto_projectors]
type t = | S: s:Seq.seq C.char { well_formed s } -> t

let v s = s.s

let length s = Seq.length s.s

let get s l = Seq.index s.s (U32.v l)

let nonzero_is_lt i s = ()

let of_literal _ = admit ()

let print _ = admit ()

let strlen _ = admit ()

let memcpy _ _ _ = admit ()
