<> <<>> DIRECTORY RecordingLock; RecordingLockImpl: CEDAR MONITOR EXPORTS RecordingLock = BEGIN lock: BOOL_FALSE; GetLock: PUBLIC ENTRY PROC RETURNS [success: BOOL_FALSE] = BEGIN ENABLE UNWIND => NULL; IF NOT lock THEN {lock _ TRUE; success_ TRUE;} END; ReleaseLock: PUBLIC ENTRY PROC = BEGIN ENABLE UNWIND => NULL; lock _ FALSE END; END.