list[T] = ref object
PyList[T] = list[T]
func `<`[A, B](self: PyList[A]; o: openArray[B]): bool {.inline.}
func `<`[A, B](self: PyList[A]; o: PyList[B]): bool {.inline.}
func `<=`[A, B](self: PyList[A]; o: openArray[B]): bool {.inline.}
func `<=`[A, B](self: PyList[A]; o: PyList[B]): bool {.inline.}
func `==`[A, B](self: PyList[A]; o: openArray[B]): bool {.inline.}
func `==`[A, B](self: PyList[A]; o: PyList[B]): bool {.inline.}
func `@`[T](ls: PyList[T]): seq[T]
func getPtr[T](self: var PyList[T]; i: Natural | BackwardsIndex): ptr T
func newPyList[T](a: openArray[T]): PyList[T]
func newPyList[T](len = 0): PyList[T]
func newPyList[T](s: seq[T]): PyList[T]
func newPyListOfCap[T](cap = 0): PyList[T]
func repr[T: set | string | openArray](self: PyList[T]): string
func setLen(self: PyList; len: Natural)
iterator items[T](self: PyList[T]): T
iterator mitems[T](self: PyList[T]): var T
iterator pairs[T](self: PyList[T]): (int, T)
converter asSeq[T](self: PyList[T]): seq[T]
converter asSeq[T](self: var PyList[T]): var seq[T]
template `<`[A, B](o: openArray[A]; self: PyList[B]): bool
template `<=`[A, B](o: openArray[A]; self: PyList[B]): bool
template `==`[A, B](o: openArray[A]; self: PyList[B]): bool
template checkLenientOps(A, B)