By default, a Mesh models a solid. When allowing (inner- or intra-)surface intersections or nested components, the Mesh models a supersolid. If the geometry has open borders or certain non-manifold configurations, it is colloquially known as "bad input". Most operations require at least supersolid input.
If your input is not supersolid, e.g. contains holes, then it must be marked as such by calling this function. Most operations do not work on non-supersolid and will result in Result::OperandMustBeSupersolid. The main way to use such a mesh in a boolean is to call Operation::Heal beforehand.
IMPORTANT: this flag does NOT imply AllowSelfIntersections or AllowSurfaceIntersections for added surfaces. The most conservative (and slowest) configuration is AllowNonSupersolid and AllowSurfaceIntersections and marking all surfaces as AllowSelfIntersections.
Signature
class MeshBuilder:
// Marks that the mesh may be non-supersolid, e.g. with holes or non-manifold configurations
fun allowNonSupersolid()