def boolean_arg(ctx, obj):
    '''
    Handles LiteralObjects as well as computable arguments
    '''
    if hasattr(obj, 'compute'):
        obj = next(obj.compute(ctx), False)
    return to_boolean(obj)
Handles LiteralObjects as well as computable arguments