summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthew Sackman <matthew@lshift.net>2009-10-13 11:11:16 +0100
committerMatthew Sackman <matthew@lshift.net>2009-10-13 11:11:16 +0100
commitd444fd443b8a324a08add6ab54f6e6889473108e (patch)
tree4b0052692e2a05e9e360e1300a6b7304b272ce9d
parentff94f3c3a6bff3d3b2e1bc0d256b9bc2951fe9ce (diff)
downloadrabbitmq-server-git-d444fd443b8a324a08add6ab54f6e6889473108e.tar.gz
factorisation and application of DeMorgan
-rw-r--r--src/rabbit_variable_queue.erl30
1 files changed, 14 insertions, 16 deletions
diff --git a/src/rabbit_variable_queue.erl b/src/rabbit_variable_queue.erl
index 47f8fec366..97e8141fe6 100644
--- a/src/rabbit_variable_queue.erl
+++ b/src/rabbit_variable_queue.erl
@@ -576,26 +576,24 @@ reduce_memory_use(State =
_ -> State1
end.
-%% Bool PersistentMsgsAlreadyOnDisk IsPersistent | WriteToDisk?
+%% Bool IsPersistent PersistentMsgsAlreadyOnDisk | WriteToDisk?
%% -----------------------------------------------+-------------
-%% false false false | false 1
-%% false false true | true 2
-%% false true false | false 3
-%% false true true | false 4
-%% true false false | true 5
-%% true false true | true 6
-%% true true false | true 7
-%% true true true | false 8
-
-%% (Bool and (not PersistentMsgsAlreadyOnDisk)) or | 5 6
-%% (Bool and (not IsPersistent)) or | 5 7
-%% ((not PersistentMsgsAlreadyOnDisk) and IsPersistent) | 2 6
+%% false false false | false 1
+%% false true false | true 2
+%% false false true | false 3
+%% false true true | false 4
+%% true false false | true 5
+%% true true false | true 6
+%% true false true | true 7
+%% true true true | false 8
+
+%% (Bool and not (IsPersistent and PersistentMsgsAlreadyOnDisk)) or | 5 6 7
+%% (IsPersistent and (not PersistentMsgsAlreadyOnDisk)) | 2 6
maybe_write_msg_to_disk(Bool, PersistentMsgsAlreadyOnDisk,
Msg = #basic_message { guid = MsgId,
is_persistent = IsPersistent })
- when (Bool andalso (not PersistentMsgsAlreadyOnDisk)) orelse
- (Bool andalso (not IsPersistent)) orelse
- ((not PersistentMsgsAlreadyOnDisk) andalso (IsPersistent)) ->
+ when (Bool andalso not (IsPersistent andalso PersistentMsgsAlreadyOnDisk))
+ orelse (IsPersistent andalso not PersistentMsgsAlreadyOnDisk) ->
ok = rabbit_msg_store:write(MsgId, ensure_binary_properties(Msg)),
true;
maybe_write_msg_to_disk(_Bool, _PersistentMsgsAlreadyOnDisk, _Msg) ->