Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP

Loading…

`withCompression'` should take a predicate function #148

Open
hvr opened this Issue · 0 comments

1 participant

@hvr
Collaborator
hvr commented

The current signature reads:

withCompression' :: MonadSnap m
                 => Set ByteString    -- ^ set of compressible MIME types
                 -> m a               -- ^ the web handler to run
                 -> m ()

The use of Set seems to be too inflexible to me, e.g. if you wanted to compress all mime-types matching text/*, you'd have to enumerate them all; or if you wanted to use a HashSet instead of Set. Also, in some cases you might want to compress the data only if a certain size threshold is exceeded. Thus, I'd suggest using a predicate function with the signature :: ByteString -> Int64 -> Bool instead of a value of type Set ByteString.

PS: is there a reason, that the monadic value of m a is discarded, and is transformed into a m () action?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.