(encoding)
return encodings
Split a method signature encoding into a sequence of type encodings.

    The first type encoding represents the return type, all remaining type encodings represent the argument types.

    If there are any numbers after a type encoding, they are ignored. On PowerPC, these numbers indicated each
    argument/return value's offset on the stack. These numbers are meaningless on modern architectures.
Split a method signature encoding into a sequence of type encodings.
Split a method signature encoding into a sequence of type encodings .
def split_method_encoding(encoding):
    """Split a method signature encoding into a sequence of type encodings.

    The first type encoding represents the return type, all remaining type encodings represent the argument types.

    If there are any numbers after a type encoding, they are ignored. On PowerPC, these numbers indicated each
    argument/return value's offset on the stack. These numbers are meaningless on modern architectures.
    """

    encodings = []
    start = 0
    while start < len(encoding):
        # Find the end of the current encoding
        end = _end_of_encoding(encoding, start)
        encodings.append(encoding[start:end])
        start = end
        # Skip the legacy stack offsets
        while start < len(encoding) and encoding[start] in b"0123456789":
            start += 1

    return encodings
def split_method_encoding ( encoding ) : encodings = [ ] start = 0 while start < len ( encoding ) : # Find the end of the current encoding end = _end_of_encoding ( encoding , start ) encodings . append ( encoding [ start : end ] ) start = end # Skip the legacy stack offsets while start < len ( encoding ) and encoding [ start ] in b"0123456789" : start += 1 return encodings