This package contains some common functions for creating/freeing and manipulating non-linear matrixref-values, which are just refereces to matrices without dimension information attached.
stadef matrixref = matrixref_vt0ype_int_int_type
abstype
matrixref_vt0ype_int_int_type
(a:vt@ype(*inv*), nrow: int, ncol:int) = ptr
praxi
lemma_matrixref_param
{a:vt0p}{m,n:int}
(M: matrixref(a, m, n)): [m >= 0; n >= 0] void
fun{
a:t0p
} matrixref_make_elt
{m,n:int}
(size_t(m), size_t(n), x0: a):<!wrt> matrixref(a, m, n)
overload matrixref_get_at with matrixref_get_at_int of 0
overload matrixref_get_at with matrixref_get_at_size of 0
fun{a:t0p} matrixref_get_at_int {m,n:int} ( M: matrixref(a, m, n), i: natLt(m), n: int(n), j: natLt(n) ) :<!ref> (a) // end of [matrixref_get_at_int]
fun{a:t0p} matrixref_get_at_size {m,n:int} ( M: matrixref(a, m, n), i: sizeLt(m), n: size_t(n), j: sizeLt(n) ) :<!ref> (a) // end of [matrixref_get_at_size]
overload matrixref_set_at with matrixref_set_at_int of 0
overload matrixref_set_at with matrixref_set_at_size of 0
fun{a:t0p} matrixref_set_at_int {m,n:int} ( M: matrixref(a, m, n), i: natLt(m), n: int n, j: natLt(n), x: a ) :<!refwrt> void // end of [matrixref_set_at_int]
fun{a:t0p} matrixref_set_at_size {m,n:int} ( M: matrixref(a, m, n), i: sizeLt(m), n: size_t n, j: sizeLt(n), x: a ) :<!refwrt> void // end of [matrixref_set_at_size]
overload matrixref_exch_at with matrixref_exch_at_int of 0
overload matrixref_exch_at with matrixref_exch_at_size of 0
fun{a:vt0p} matrixref_exch_at_int {m,n:int} ( M: matrixref(a, m, n) , i: natLt(m), n: int n, j: natLt(n), x: &a >> _ ) :<!refwrt> void // end of [matrixref_exch_at_int]
fun{a:vt0p} matrixref_exch_at_size {m,n:int} ( M: matrixref(a, m, n) , i: sizeLt(m), n: size_t n, j: sizeLt(n), x: &a >> _ ) :<!refwrt> void // end of [matrixref_exch_at_size]
fun{a:vt0p} fprint_matrixref{m,n:int} ( out: FILEref , M: matrixref(a, m, n), m: size_t m, n: size_t n ) : void // end of [fprint_matrixref]
fun{a:vt0p} fprint_matrixref_sep{m,n:int} ( out: FILEref , M: matrixref(a, m, n), m: size_t(m), n: size_t(n) , sep1: NSH(string), sep2: NSH(string) ) : void // end of [fprint_matrixref_sep]
fun{a:vt0p}
matrixref_tabulate
{m,n:int}
(nrow: size_t m, ncol: size_t n): matrixref(a, m, n)
stadef mtrxszref = mtrxszref_vt0ype_type
abstype // in-variant
mtrxszref_vt0ype_type(a:vt@ype) = ptr
overload .ref with mtrxszref_get_ref
fun{}
mtrxszref_get_ref{a:vt0p} (M: mtrxszref(a)):<> Ptr1
fun{}
mtrxszref_get_nrow{a:vt0p} (M: mtrxszref(a)):<> size_t
fun{}
mtrxszref_get_ncol{a:vt0p} (M: mtrxszref(a)):<> size_t
fun{} mtrxszref_get_refsize{a:vt0p} ( M: mtrxszref(a) , nrol: &size_t? >> size_t m, ncol: &size_t? >> size_t(n) ) :<!wrt> #[m,n:nat] matrixref(a, m, n) // endfun
fun{a:t0p}
mtrxszref_make_elt
(nrow: size_t, ncol: size_t, init: a):<!wrt> mtrxszref(a)
overload mtrxszref_get_at with mtrxszref_get_at_int of 0
overload mtrxszref_get_at with mtrxszref_get_at_size of 0
fun{a:t0p}
mtrxszref_get_at_int
(M: mtrxszref(a), i: int, j: int):<!exnref> (a)
fun{a:t0p}
mtrxszref_get_at_size
(M: mtrxszref(a), i: size_t, j: size_t):<!exnref> (a)
overload mtrxszref_set_at with mtrxszref_set_at_int of 0
overload mtrxszref_set_at with mtrxszref_set_at_size of 0
fun{a:t0p}
mtrxszref_set_at_int
(M: mtrxszref(a), i: int, j: int, x: a):<!exnrefwrt> void
fun{a:t0p}
mtrxszref_set_at_size
(M: mtrxszref(a), i: size_t, j: size_t, x: a):<!exnrefwrt> void
Synopsis for [mtrxszref_exch_at] is unavailable.
Synopsis for [mtrxszref_exch_at_int] is unavailable.
Synopsis for [mtrxszref_exch_at_size] is unavailable.
fun{a:vt0p} fprint_mtrxszref ( out: FILEref, M: mtrxszref(a) ) : void // end of [fprint_mtrxszref]
fun{a:vt0p} fprint_mtrxszref_sep ( out: FILEref , M: mtrxszref(a), sep1: NSH(string), sep2: NSH(string) ) : void // end of [fprint_mtrxszref_sep]
fun
{a:vt0p}
mtrxszref_tabulate
(nrow: size_t, ncol: size_t): mtrxszref(a)
overload [] with matrixref_get_at_int of 0
overload [] with matrixref_get_at_size of 0
overload [] with matrixref_set_at_int of 0
overload [] with matrixref_set_at_size of 0
overload [] with mtrxszref_get_at_int of 0
overload [] with mtrxszref_get_at_size of 0
overload [] with mtrxszref_set_at_int of 0
overload [] with mtrxszref_set_at_size of 0
overload .nrow with mtrxszref_get_nrow
overload .ncol with mtrxszref_get_ncol
overload ptrcast with matrixref2ptr
overload fprint with fprint_matrixref
overload fprint with fprint_matrixref_sep
overload fprint with fprint_mtrxszref
overload fprint with fprint_mtrxszref_sep
This page is created with ATS by Hongwei Xi and also maintained by Hongwei Xi. |