Listat

Lista säilyttää kokoelmaa arvoista tietyssä järjestyksessä. Voit lisätä arvoja listan loppuun tai johonkin väliin keskelle listaa. Voit viitata arvoihin käyttämällä indeksilukua. Voit myös järjestää arvot joko nousevaan tai laskevaan järjestykseen. Listoja voidaan käyttää monella tapaa, esimerkiksi muuttuvien arvoryhmien säilyttämiseen. Ne toteutetaan käyttämällä yksinkertaisia taulukoita, mutta koska niitä käsitellään käännetyllä koodilla, niiden käyttäminen on paljon nopeampaa kuin oman taulukon käyttäminen. Seuraavat toiminnot käsittelevät listoja:

ds_list_create() Luo uuden listan. Funktio palauttaa kokonaisluvun, joka on listan id ja jota on käytettävä kaikissa muissa funktioissa juuri tämän tietyn listan käsittelemiseksi. Voit luoda useita listoja.
ds_list_destroy(id) Tuhoaa listan, jolla on annettu id, ja vapauttaa sen varaaman muistin. Älä unohda kutsua tätä, kun et enää tarvitse listaa.
ds_list_clear(id) Tyhjentää listan, jolla on annettu id, jolloin kaikki siinä oleva tieto poistetaan, mutta itse listaa ei tuhota.
ds_list_copy(id,source) Kopioi listan source listaan, jolla on annettu id.
ds_list_size(id) Ilmoittaa listaan, jolla on annettu id, säilöttyjen arvojen määrän.
ds_list_empty(id) Ilmoittaa, onko lista, jolla on annettu id, tyhjä. Tämä on sama asia, kuin jos testaisi, onko listan koko 0.
ds_list_add(id,val) Lisää arvon listan, jolla on annettu id, loppuun.
ds_list_insert(id,pos,val) Lisää arvon listan, jolla on annettu id, keskelle ilmoitettuun sijaintiin. Ensimmäinen sijainti on 0, kun taas viimeinen sijainti on listan koko miinus yksi.
ds_list_replace(id,pos,val) Korvaa listan, jolla on annettu id, annetussa sijainnissa olevan arvon uudella arvolla.
ds_list_delete(id,pos) Poistaa listalta, jolla on annettu id, annetussa sijainnissa olevan arvon. (Sijainti 0 on ensimmäinen arvo.)
ds_list_find_index(id,val) Etsii sijainnin, jossa on ilmoitettu arvo. Jos arvoa ei löydy listalta, funktio palauttaa arvon -1.
ds_list_find_value(id,pos) Palauttaa arvon, joka on säilötty annettuun sijaintiin listalla, jolla on annettu id.
ds_list_sort(id,ascend) Järjestää listan, jolla on annettu id, arvot. Kun ascend on tosi, arvot järjestetään nousevassa järjestyksessä, muulloin laskevassa järjestyksessä.
ds_list_shuffle(id) Sekoittaa listan, jolla on annettu id, arvot, jolloin ne päätyvät sattumanvaraiseen järjestykseen.
ds_list_write(id) Muuntaa listatietorakenteen, jolla on annettu id, merkkijonoksi ja palauttaa sen. Tätä merkkijonoa voidaan sitten käyttää esim. sen tallentamiseen tiedostoon. Tällä tavoin tietorakenteiden tallentaminen helpottuu.
ds_list_read(id,str) Lukee tietorakenteen annetusta merkkijonosta (joka on luotu edellisellä funktiolla).