Records
Ein Record hat einen Namen gefolgt von Feld Definitionen.
Man definiert einen Record mit der Directive -record
.
-record(Name, {Field1 [= Value1],
...
FieldN [= ValueN]}).
Definierte Records kann man #<name>
erzeugen.
#Name{Field1=Expr1,...,FieldK=ExprK}
Expr#Name{Field1=Expr1,...,FieldK=ExprK}
record_info(fields, Name)
record_info(size, Name)
Auf der Konsole erzeugt man einen Record mit rd()
.
1> rd(language, {id, name = ""}).
language
2> Language = #language{id=1, name="Erlang"}.
#language{id = 1, name = "Erlang"}
Die definierten Records kann man sich mit rl()
anzeigen lassen.
Mit rf()
kann man die definierten Records löschen.
3> rl().
-record(language,{id, name = ""}).
ok
4> rf(language).
ok
Um die Record Definitionen aus einem Modul zu laden nutzt man rr(module)
.