The documentation for the values() call isn't clear about what it returns. Apparently it returns a new Insert object, with the provided values arguments associated with it. Connection.excecute() should then be called on this returned value. The passed-in values are not attached, or "fixed" to the insert object itself, but to a new one that values() instantiates and returns.
The documentation isn't clear on this and the examples don't show it being used in this way.
Simply listing the method's return type would be sufficient but adding an additional explanation, or showing this usage in the examples, would be helpful as well.