By default, all members in a struct can be accessed. It is possible to make some elements private by
prefixing them with _
, as in:
struct Foo = { a, _b, c } # (...) let foo = Foo(1, 2, 3)
In this case, _b
is a private struct member. This means that foo: _b()
and foo: _b(666)
are
valid calls only if made from:
Any call to, say, foo: _b()
from another module will yield a NoSuchMethodError
exception.
Private struct members also have the following impact:
members()
and values()
calls, and
iterator()
-provided iterators, and
equals()
and hashCode()
, and
toString()
representations.