ATSLIB/prelude/stream_vt
Synopsis
vtypedef
stream_vt (a:vt0p) = lazy_vt (stream_vt_con(a))
Synopsis
datavtype
stream_vt_con
(a:vt@ype+) =
| stream_vt_nil of ()
| stream_vt_cons of (a, stream_vt(a))
where
stream_vt
(a:vt@ype) = lazy_vt(stream_vt_con(a))
Synopsis
fun
{a:vt0p}
stream2list_vt
(stream_vt(INV(a))):<!wrt> List0_vt(a)
Synopsis
fun
{a:vt0p}
stream_vt_free
(xs: stream_vt(a)):<!wrt> void
Synopsis
fun{a:vt0p}
stream_vt_foreach
(stream_vt(INV(a))): stream_vt_con(a)
Synopsis
fun{
a:vt0p}{env:vt0p
} stream_vt_foreach_env
(stream_vt(INV(a)), env: &env >> _): stream_vt_con(a)
Synopsis
fun{
a:vt0p}{env:vt0p
} stream_vt_foreach$fwork
(x: &a >> a?!, env: &env >> _): void
Synopsis
fun{a:t0p}
stream_vt_filter
(xs: stream_vt(INV(a))): stream_vt(a)
Synopsis
fun{a:t0p}
stream_vt_filter$pred(x: &a):<> bool
Synopsis
fun{a:t0p}
stream_vt_filter_fun
(
xs: stream_vt(INV(a)), pred: (&a) -<fun> bool
) : stream_vt (a)
Synopsis
fun{a:t0p}
stream_vt_filter_cloptr
(
xs: stream_vt(INV(a)), pred: (&a) -<cloptr1> bool
) : stream_vt (a)
Synopsis
fun{a:vt0p}
stream_vt_filterlin
(xs: stream_vt(INV(a))): stream_vt(a)
Synopsis
fun{a:vt0p}
stream_vt_filterlin$clear(x: &a >> a?):<!wrt> void
Synopsis
fun{
a:vt0p}{b:vt0p
} stream_vt_map
(xs: stream_vt(INV(a))): stream_vt(b)
Synopsis
fun{
a:vt0p}{b:vt0p
} stream_vt_map$fopr(x: &a >> a?!):<1> (b)
Synopsis
fun{
a:vt0p}{b:vt0p
} stream_vt_map_fun
(
xs: stream_vt(INV(a)), fopr: (&a >> a?!) -<fun1> b
) : stream_vt(b)
Synopsis
fun{
a:vt0p}{b:vt0p
} stream_vt_map_cloptr
(
xs: stream_vt(INV(a)), fopr: (&a >> a?!) -<cloptr1> b
) : stream_vt(b)
Synopsis
fun
{a1
,a2:t0p}
{b0:vt0p}
stream_vt_map2
(
xs1: stream_vt(INV(a1))
, xs2: stream_vt(INV(a2))
) : stream_vt(b0)
Synopsis
fun
{a1
,a2:t0p}
{b0:vt0p}
stream_vt_map2$fopr(x1: &a1 >> _, x2: &a2 >> _):<1> b0
Synopsis
fun{
a1,a2:t0p}{b0:vt0p
} stream_vt_map2_fun
(
xs1: stream_vt(INV(a1))
, xs2: stream_vt(INV(a2)), fopr: (&a1 >> _, &a2 >> _) -<fun1> b0
) : stream_vt(b0)
Synopsis
fun{
a1,a2:t0p}{b0:vt0p
} stream_vt_map2_cloptr
(
xs1: stream_vt(INV(a1))
, xs2: stream_vt(INV(a2)), fopr: (&a1 >> _, &a2 >> _) -<cloptr1> b0
) : stream_vt(b0)
Synopsis
fun
{a:vt0p}
stream_vt_tabulate(): stream_vt(a)
Synopsis
fun
{a:vt0p}
stream_vt_tabulate$fopr(idx: intGte(0)): (a)
Synopsis
vtypedef
streamer_vt(a:vt0p) = streamer_vtype(a)
Synopsis
absvtype
streamer_vtype(a:vt@ype+) = ptr
Synopsis
fun{}
streamer_vt_make
{a:vt0p}(stream_vt(INV(a))): streamer_vt(a)
Synopsis
fun{}
streamer_vt_free{a:vt0p}(streamer_vt(INV(a))): void
Synopsis
fun{
a:vt@ype
} streamer_vt_eval_exn(xser: !streamer_vt(INV(a))): (a)
Synopsis
overload ~ with streamer_vt_free
Synopsis
overload [] with streamer_vt_eval_exn
Synopsis
overload .head with stream_vt_head_exn
Synopsis
overload .tail with stream_vt_tail_exn