gui/doc/ext/autosummary/__init__.py
def mangle_signature(sig, max_chars=30):
    """Reformat a function signature to a more compact form."""
    s = re.sub(r"^\((.*)\)$", r"\1", sig).strip()

    # Strip strings (which can contain things that confuse the code below)
    s = re.sub(r"\\\\", "", s)
    s = re.sub(r"\\'", "", s)
    s = re.sub(r"'[^']*'", "", s)

    # Parse the signature to arguments + options
    args = []
    opts = []

    opt_re = re.compile(r"^(.*, |)([a-zA-Z0-9_*]+)=")
    while s:
        m = opt_re.search(s)
        if not m:
            # The rest are arguments
            args = s.split(', ')
            break

        opts.insert(0, m.group(2))
        s = m.group(1)[:-2]

    # Produce a more compact signature
    sig = limited_join(", ", args, max_chars=max_chars-2)
    if opts:
        if not sig:
            sig = "[%s]" % limited_join(", ", opts, max_chars=max_chars-4)
        elif len(sig) < max_chars - 4 - 2 - 3:
            sig += "[, %s]" % limited_join(", ", opts,
                                           max_chars=max_chars-len(sig)-4-2)

    return u"(%s)" % sig
def mangle_signature(sig, max_chars=30):
    s = re.sub(r"^\((.*)\)$", r"\1", sig).strip()

    # Strip strings (which can contain things that confuse the code below)
    s = re.sub(r"\\\\", "", s)
    s = re.sub(r"\\'", "", s)
    s = re.sub(r"'[^']*'", "", s)

    # Parse the signature to arguments + options
    args = []
    opts = []

    opt_re = re.compile(r"^(.*, |)([a-zA-Z0-9_*]+)=")
    while s:
        m = opt_re.search(s)
        if not m:
            # The rest are arguments
            args = s.split(', ')
            break

        opts.insert(0, m.group(2))
        s = m.group(1)[:-2]

    # Produce a more compact signature
    sig = limited_join(", ", args, max_chars=max_chars-2)
    if opts:
        if not sig:
            sig = "[%s]" % limited_join(", ", opts, max_chars=max_chars-4)
        elif len(sig) < max_chars - 4 - 2 - 3:
            sig += "[, %s]" % limited_join(", ", opts,
                                           max_chars=max_chars-len(sig)-4-2)

    return u"(%s)" % sig
def mangle_signature ( sig , max_chars = 30 ) : s = re . sub ( r"^\((.*)\)$" , r"\1" , sig ) . strip ( ) # Strip strings (which can contain things that confuse the code below) s = re . sub ( r"\\\\" , "" , s ) s = re . sub ( r"\\'" , "" , s ) s = re . sub ( r"'[^']*'" , "" , s ) # Parse the signature to arguments + options args = [ ] opts = [ ] opt_re = re . compile ( r"^(.*, |)([a-zA-Z0-9_*]+)=" ) while s : m = opt_re . search ( s ) if not m : # The rest are arguments args = s . split ( ', ' ) break opts . insert ( 0 , m . group ( 2 ) ) s = m . group ( 1 ) [ : - 2 ] # Produce a more compact signature sig = limited_join ( ", " , args , max_chars = max_chars - 2 ) if opts : if not sig : sig = "[%s]" % limited_join ( ", " , opts , max_chars = max_chars - 4 ) elif len ( sig ) < max_chars - 4 - 2 - 3 : sig += "[, %s]" % limited_join ( ", " , opts , max_chars = max_chars - len ( sig ) - 4 - 2 ) return u"(%s)" % sig
Reformat a function signature to a more compact form.
Reformat a function signature to a more compact form .