diff options
author | Joey Hess <joey@kitenet.net> | 2013-04-23 14:30:54 -0400 |
---|---|---|
committer | Joey Hess <joey@kitenet.net> | 2013-04-23 14:54:54 -0400 |
commit | 5fbb5ece11246256fd947b78f89d512e37e47cf5 (patch) | |
tree | 3f720c247f6c02aaa56d454253c7967d07cf6e56 /Assistant/Types | |
parent | 13b3c84e1030d3ca24593d49cf4fd3a603a3bbda (diff) |
more efficient data type for ChangeChan
Making this a tset of lists of Changes, rather than a tset of Changes
makes refilling it, in batch mode, much more efficient. Rather than needing
to add every Change it's collected one at a time, it can add them in one
fast batch operation.
It would be more efficient yet to use a Set, but that would need an Eq
instance for InodeCache.
Diffstat (limited to 'Assistant/Types')
-rw-r--r-- | Assistant/Types/Changes.hs | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/Assistant/Types/Changes.hs b/Assistant/Types/Changes.hs index 9729acfbd..3b6e8501a 100644 --- a/Assistant/Types/Changes.hs +++ b/Assistant/Types/Changes.hs @@ -22,7 +22,7 @@ changeInfoKey (AddKeyChange k) = Just k changeInfoKey (LinkChange (Just k)) = Just k changeInfoKey _ = Nothing -type ChangeChan = TSet Change +type ChangeChan = TSet [Change] newChangeChan :: IO ChangeChan newChangeChan = atomically newTSet |