def get_fact(state, host, name):
    '''
    Wrapper around ``get_facts`` returning facts for one host or a function
    that does.
    '''

    # Expecting a function to return
    if callable(getattr(FACTS[name], 'command', None)):
        def wrapper(*args):
            fact_data = get_facts(state, name, args=args, ensure_hosts=(host,))

            return fact_data.get(host)
        return wrapper

    # Expecting the fact as a return value
    else:
        # Get the fact
        fact_data = get_facts(state, name, ensure_hosts=(host,))

        return fact_data.get(host)
Wrapper around ``get_facts`` returning facts for one host or a function
    that does.