masonry-rs
masonry-rs copied to clipboard
Document re-entrancy invariants in AppRoot
The AppRoot
is the composition root of everything in a Masonry program; everything passes through an AppRoot instance.
AppRoot instances each own an AppRootInner, which it needs to lock to perform operations. However, some AppRoot methods may call WindowHandle methods which themselves may end up indirectly calling AppRoot methods; thus, these methods should be re-entrant.
Which methods need to be re-entrant and why should be documented (which will probably require familiarity with Glazier code).