The getter-backed entity-class access surface, exposed inside SoHL as the
entity import and outside as the runtime global sohl.entity.
Each class name is a getter returning the currently-registered class, so an
override applied via SohlEntitySurface.register is picked up
automatically at every access and every construction site. The
register/base members are non-enumerable, so Object.keys(sohl.entity)
lists only class names. The surface itself is frozen.
The getter-backed entity-class access surface, exposed inside SoHL as the
entityimport and outside as the runtime globalsohl.entity.Each class name is a getter returning the currently-registered class, so an override applied via SohlEntitySurface.register is picked up automatically at every access and every construction site. The
register/basemembers are non-enumerable, soObject.keys(sohl.entity)lists only class names. The surface itself is frozen.