ATSLIB/libats/gnode

This package contains various functions for manipulating generic nodes.
  • gnode_null
  • gnode_get_elt
  • gnode_set_elt
  • gnode_getref_elt
  • gnode_get_next
  • gnode_set_next
  • gnode_getref_next
  • gnode_get_prev
  • gnode_set_prev
  • gnode_getref_prev
  • gnode_link00
  • gnode_link01
  • gnode_link10
  • gnode_link11
  • gnode_insert_next
  • gnode_insert_prev
  • gnode_remove
  • gnode_remove_next
  • gnode_remove_prev
  • gnodelst_length
  • gnodelst_rlength
  • gnodelst_next_all
  • gnodelst_prev_all

  • gnode_null

    Synopsis

    fun{
    } gnode_null
      {tk:tk}{a:vt0p} ():<> gnode (tk, a, null)

    gnode_get_elt

    Synopsis

    fun{
    tk:tk}{a:t0p
    } gnode_get_elt (nx: gnode1 (tk, INV(a))):<> (a)

    gnode_set_elt

    Synopsis

    fun{
    tk:tk}{a:t0p
    } gnode_set_elt (nx: gnode1 (tk, INV(a)), x0: a):<!wrt> void

    gnode_getref_elt

    Synopsis

    fun{
    tk:tk}{a:vt0p
    } gnode_getref_elt (nx: gnode1 (tk, INV(a))):<> cPtr1 (a)

    gnode_get_next

    Synopsis

    fun{
    tk:tk}{a:vt0p // implemented
    } gnode_get_next (nx: gnode1 (tk, INV(a))):<> gnode0 (tk, a)

    gnode_set_next

    Synopsis

    fun{
    tk:tk}{a:vt0p // implemented
    } gnode_set_next (nx: gnode1 (tk, INV(a)), nx2: gnode (tk, a)):<!wrt> void

    gnode_getref_next

    Synopsis

    fun{
    tk:tk}{a:vt0p
    } gnode_getref_next (nx: gnode1 (tk, INV(a))):<> cPtr1 (gnode0(tk, a))

    gnode_get_prev

    Synopsis

    fun{
    tk:tk}{a:vt0p
    } gnode_get_prev (nx: gnode1 (tk, INV(a))):<> gnode0 (tk, a)

    gnode_set_prev

    Synopsis

    fun{
    tk:tk}{a:vt0p
    } gnode_set_prev (nx: gnode1 (tk, INV(a)), nx2: gnode (tk, a)):<!wrt> void

    gnode_getref_prev

    Synopsis

    fun{
    tk:tk}{a:vt0p
    } gnode_getref_prev (nx: gnode1 (tk, INV(a))):<> cPtr1 (gnode0 (tk, a))

    gnode_link00

    Synopsis

    fun{
    tk:tk}{a:vt0p
    } gnode_link00 (nx1: gnode0 (tk, INV(a)), nx2: gnode0 (tk, a)):<!wrt> void

    gnode_link01

    Synopsis

    fun{
    tk:tk}{a:vt0p
    } gnode_link01 (nx1: gnode0 (tk, INV(a)), nx2: gnode1 (tk, a)):<!wrt> void

    gnode_link10

    Synopsis

    fun{
    tk:tk}{a:vt0p
    } gnode_link10 (nx1: gnode1 (tk, INV(a)), nx2: gnode0 (tk, a)):<!wrt> void

    gnode_link11

    Synopsis

    fun{
    tk:tk}{a:vt0p
    } gnode_link11 (nx1: gnode1 (tk, INV(a)), nx2: gnode1 (tk, a)):<!wrt> void

    gnode_insert_next

    Synopsis

    fun{
    tk:tk}{a:vt0p
    } gnode_insert_next
      (nx1: gnode1 (tk, INV(a)), nx2: gnode1 (tk, a)):<!wrt> void

    gnode_insert_prev

    Synopsis

    fun{
    tk:tk}{a:vt0p
    } gnode_insert_prev
      (nx1: gnode1 (tk, INV(a)), nx2: gnode1 (tk, a)):<!wrt> void

    gnode_remove

    Synopsis

    fun{
    tk:tk}{a:vt0p
    } gnode_remove (nx: gnode1 (tk, INV(a))):<!wrt> gnode1 (tk, a)

    gnode_remove_next

    Synopsis

    fun{
    tk:tk}{a:vt0p
    } gnode_remove_next (nx: gnode1 (tk, INV(a))):<!wrt> gnode0 (tk, a)

    gnode_remove_prev

    Synopsis

    fun{
    tk:tk}{a:vt0p
    } gnode_remove_prev (nx: gnode1 (tk, INV(a))):<!wrt> gnode0 (tk, a)

    gnodelst_length

    Synopsis

    fun{
    tk:tk}{a:vt0p
    } gnodelst_length (nxs: gnode0 (tk, INV(a))):<> intGte(0)

    gnodelst_rlength

    Synopsis

    fun{
    tk:tk}{a:vt0p
    } gnodelst_rlength (nxs: gnode0 (tk, INV(a))):<> intGte(0)

    gnodelst_next_all

    Synopsis

    fun{
    tk:tk}{a:vt0p
    } gnodelst_next_all (nxs: gnode1 (tk, INV(a))):<> gnode1 (tk, a)

    gnodelst_prev_all

    Synopsis

    fun{
    tk:tk}{a:vt0p
    } gnodelst_prev_all (nxs: gnode1 (tk, INV(a))):<> gnode1 (tk, a)

    This page is created with ATS by Hongwei Xi and also maintained by Hongwei Xi. SourceForge.net Logo