-- Run the first pass of the filter, without a runtime context; this will
-- limit the objects that we'll contact for exports
fobjects <- toError $
- filterM (\n -> evaluateQueryFilter cfg Nothing n cfilter) objects
+ filterM (\n -> evaluateFilter cfg Nothing n cfilter) objects
-- Gather the runtime data and filter the results again,
-- based on the gathered data
runtimes <- (case collector of
CollectorSimple collFn -> lift $ collFn live' cfg fobjects
CollectorFieldAware collFn -> lift $ collFn live' cfg fields fobjects) >>=
(toError . filterM (\(obj, runtime) ->
- evaluateQueryFilter cfg (Just runtime) obj cfilter))
+ evaluateFilter cfg (Just runtime) obj cfilter))
let fdata = map (\(obj, runtime) ->
map (execGetter cfg runtime obj) fgetters)
runtimes