Fast access to bmesh verts/edges/faces from python? I'm trying to build a large BMesh from scratch in python. I know you can add vertices (or faces or edges) to a BMesh one at a time:

  for v in verts:
    face = bme.verts.new(v)


but this is really slow for many vertices/edges/faces. Is there a batch way to add many vertices at once, avoiding the python overhead?

Googling around I found that the old mesh supported foreach_set() and foreach_get() which were supposed to be fast, but I gather those don't work anymore?
One way to speed this up would be to use a Python list comprehension. It's probably not the exact answer you're looking for, but it may help with optimizing the code.