This is the main module to be included by code using the Labeled IO (LIO) library. This module exports the core library (documented in LIO.Core), with support for labels and privileges (documented in LIO.Label) and labeled values (documented in LIO.Labeled).
Certain symbols in the LIO library, particularly those in
LIO.Exception, use the same names as their
IO equivalents in the
system libraries. Hence main modules consisting mostly of
that simply need to run
LIO code should import LIO.Run (or
LIO.DCLabel) to avoid polluting their namespaces.
Most code will need to use a particular label format, which needs to be imported separately. Hence, a typical set of imports for an untrusted LIO module is:
import LIO import LIO.DCLabel