human
Here's a good function header given the following:
I wrote the below code

    def _find_addr(iface, addr, timeout=1):
        (ip, cidr) = addr.rsplit('/', 1)
        netmask = salt.utils.network.cidr_to_ipv4_netmask(cidr)
        for idx in range(timeout):
            for addrinfo in get_interface(iface).get('ip_addrs', []):
                if ((addrinfo['IP    Address'] == ip) and (addrinfo['Netmask'] == netmask)):
                    return addrinfo
            time.sleep(1)
        return {}
    if (not salt.utils.validate.net.ipv4_addr(addr)):
        raise SaltInvocationError("Invalid    address    '{0}'".format(addr))
    if (gateway and (not salt.utils.validate.net.ipv4_addr(addr))):
        raise SaltInvocationError("Invalid    default    gateway    '{0}'".format(gateway))
    if ('/' not in addr):
        addr += '/32'
    if (append and _find_addr(iface, addr)):
        raise CommandExecutionError("Address    '{0}'    already    exists    on    interface    '{1}'".format(addr, iface))
    cmd = ['netsh', 'interface', 'ip']
    if append:
        cmd.append('add')
    else:
        cmd.append('set')
    cmd.extend(['address', 'name={0}'.format(iface)])
    if (not append):
        cmd.append('source=static')
    cmd.append('address={0}'.format(addr))
    if gateway:
        cmd.append('gateway={0}'.format(gateway))
    result = __salt__['cmd.run_all'](cmd, python_shell=False)
    if (result['retcode'] != 0):
        raise CommandExecutionError('Unable    to    set    IP    address:    {0}'.format(result['stderr']))
    new_addr = _find_addr(iface, addr, timeout=10)
    if (not new_addr):
        return {}
    ret = {'Address    Info': new_addr}
    if gateway:
        ret['Default    Gateway'] = gateway
    return ret

What's a good function header?
assistant
#Here's a good function header.

def set_static_ip(iface, addr, gateway=None, append=False):