123456789101112131415161718192021222324(** Kinds of memory accesses. *)typet=|Write(** argument may be written to *)|Read(** argument may be read *)|Free(** argument may be freed *)|Call(** argument may be called *)|Spawn(** argument may be spawned *)[@@derivingeq,ord,hash](** Specifies what is known about an argument. *)letshow:t->string=function|Write->"write"|Read->"read"|Free->"free"|Call->"call"|Spawn->"spawn"includePrintable.SimpleShow(structtypenonrect=tletshow=showend)