public LLDB.Process AttachToProcessWithName(LLDB.Listener listener, string name, bool wait_for, LLDB.Error error)
{
if (ReferenceEquals(listener, null))
throw new global::System.ArgumentNullException("listener", "Cannot be null because it is a C++ reference (&).");
var arg0 = listener.__Instance;
var arg1 = Marshal.StringToHGlobalAnsi(name);
if (ReferenceEquals(error, null))
throw new global::System.ArgumentNullException("error", "Cannot be null because it is a C++ reference (&).");
var arg3 = error.__Instance;
var __ret = new LLDB.Process.Internal();
Internal.AttachToProcessWithName_0(new IntPtr(&__ret), (__Instance + __PointerAdjustment), arg0, arg1, wait_for, arg3);
Marshal.FreeHGlobal(arg1);
return LLDB.Process.__CreateInstance(__ret);
}