Az Ada a programok megbízhatóságának növelése céljából igen erős
típusfogalmat használ.
Ez a következőket jelenti:
-Minden objektumnak egyetlen típusa van. |
-Minden típus egy értékhalmazt és egy művelethalmazt definiál, amely műveletek ezekre az értékekre alkalmazhatók. Egy típus nem lehet komponense saját magának. |
-Az érték és az értéket kapó objektum típusának minden értkadásban meg kell egyezni. |
-Ha egy értékre alkalmazunk egy tíusműveletet, annak a típusműveletek halmazában szerepelnie kell. |
-skalár típusok, ezen belül diszkrét és való típusok |
-diszkrét típusok, ezen belül felsorolási és egész típusok |
-összetett típusok (tömb és rekord típusok) |
-access típus |
-private típusok |
-task típusok |
A : array (1 .. 10) of BOOLEAN; |
B : array (1 .. 10) of BOOLEAN; --A és B típusa különböző |
X, Y : array (1 ..10) of BOOLEAN; --X és Y típusa különböző |
type NAP is (HET,KED,SZE,CSU,PEN,SZO,VAS); |
type VEGYES is (a,VAS); --VAS átlapolt konstans |
type STATUS is (OFF,ON); |
type SWITCH is (OFF,ON); |
type HEXA is (A, B, C, D, E, F); |
type BOOLEAN is ("FALSE","TRUE"); |
type INT is new INTEGER range -1000 .. 1000; |
vagy rövidebben |
type INT is range -1000 .. 1000; |
subtype NATURAL is INTEGER range 0 .. INTEGER´LAST; |
subtype POSITIVE is INTEGER range 1 .. INTEGER´LAST; |
<, <=, >, >=, in, not in |
T´FIRST : A tipusértékhalmaz legkisebb eleme |
T´LAST : A tipusértékhalmaz legnagyobb eleme |
T´RANGE : T'First..T'Last által meghatározott intervallumot adja. |
T´IMAGE(t) : A t T tipusu elemet stringé konvertálja |
T´VALUE(s) : Az s stringet T tipusúvá konvertálja |
T´PRED(t) : t megelőző eleme, ha van. Ha nincs kivételt dob. Pl integerek esetében t-1 |
T´SUCC(t) : t rákövetkező leme, ha van. Ha nincs kivételt dob. Pl integerek esetében t+1 |
T´MIN(a,b) : a és b közül a kisebbel tér vissza. a és b-nek T tipusúnak kell lennie |
T´MAX(a,b) : a és b közül a nagyobbal tér vissza. a és b-nek T tipusúnak kell lennie |
T´BASE : T megszorítás nélküli alaphalmaza |
T´WIDTH(t) : A t stringé konvertált hossza karakterekben mérve |