A BETA programozási nyelv

Sablonok (Generikusság)



Sablonok

A nyelvben a sablonokat is mintával lehet megvalósítani. A sablon egy olyan speciális minta, amely egy (vagy több) virtuális attribútumot tartalmaz; ezek felelnek meg a generic-paramétereknek. A virtuális attribútumokra ezek után ezen minta almintáiban (kb. leszármazottjaiban) lehet további megkötéseket tenni.

Virtuális attribútum megadása:

attributum_neve:< minta_neve

Például:

Stack: (# type:< object; ... #);

A példányosításnál az object almintáit használhatjuk. A példányosítás:

pointStack: Stack(# type::< point ... #);

A BETA-beli generic előnye: nem kötelező minden virtuális attribútumot kibővíteni, vagyis részleges megadás esetén is lehet belőle példányosítani.

A BETA-beli generic hátránya: csak közeli rokonokkal példányosíthatunk.