 	private let core: Core
 
 	private final class Core {
-		private enum OperationResult {
-			case shouldDispose
-			case shouldTryCommitTermination
-			case none
-		}
-
 		/// The disposable associated with the signal.
+		///
+		/// Disposing of `disposable` is assumed to remove the generator
+		/// observer from its attached `Signal`, so that the generator observer
+		/// as the last +1 retain of the `Signal` core may deinitialize.
 		private let disposable: SerialDisposable
 
 		/// The state of the signal.

				} else {
					self.stateLock.unlock()
				}
			} else {
				self.sendLock.lock()
				self.stateLock.lock()

		/// method as a result of a false positive `terminating` check is permitted.
		///
		/// - precondition: `stateLock` must not be acquired by the caller.
		private func tryToCommitTermination() {
			// Acquire `stateLock`. If the termination has still not yet been
			// handled, take it over and bump the status to `terminated`.
			stateLock.lock()
