[erlang-questions] encapsulating types and dialyzer
Thu Sep 11 17:45:30 CEST 2008
Suppose I have a module MC that implements a collection type known as coll().
Internally this is some record that I want to be private to the module.
The external functions in the interface mention the type coll(). So the
clients of the interface must also mention coll() if dialyzer is to check the
As far as I can see the only way to do this is to put the coll() type into
a .hrl file. This exposes the record definition, and recursively every other
type that it depends on.
Is there a better way to do this?
C at least allows me to declare a type abstractly
typedef struct private* coll;
while leaving private undefined everywhere except in the implementing module.
Anthony Shipman Mamas don't let your babies
grow up to be outsourced.
More information about the erlang-questions