What select non manifold is for exactly? I have some non manifold meshes to heal. And we have:

bpy.ops.mesh.select_non_manifold(extend=True, use_wire=True, use_boundary=True, use_multi_face=True, use_non_contiguous=True, use_verts=True)

    Select all non-manifold vertices or edges
    Parameters: 

        extend (boolean, (optional)) – Extend, Extend the selection
        use_wire (boolean, (optional)) – Wire, Wire edges
        use_boundary (boolean, (optional)) – Boundaries, Boundary edges
        use_multi_face (boolean, (optional)) – Multiple Faces, Edges shared by 3+ faces
        use_non_contiguous (boolean, (optional)) – Non Contiguous, Edges between faces pointing in alternate directions
        use_verts (boolean, (optional)) – Vertices, Vertices connecting multiple face regions


I cannot figure the meaning of all options exactly. Can someone please tell me?

EDIT: Let's see... maybe that was too broad.

use_wire: edges without faces
use_boundary: edges with one face only
use_multi_face: edges with 3+ faces
use_non_contiguous: edges with one face turning back to the other
use_verts: ???
extend=True adds to the current selection, whereas extend=False replaces the selection.

Those use_xxx bools are different reasons why a part of the mesh can be non-manifold, and allow the user to select specific cases.