func proxy__eq(L *lua.State) int {
	var a1 interface{}
	_ = LuaToGo(L, 1, &a1)
	var a2 interface{}
	_ = LuaToGo(L, 2, &a2)
	L.PushBoolean(a1 == a2)
	return 1
}
func proxy__eq(L *lua.State) int {
	var a1 interface{}
	_ = LuaToGo(L, 1, &a1)
	var a2 interface{}
	_ = LuaToGo(L, 2, &a2)
	L.PushBoolean(a1 == a2)
	return 1
}
func proxy__eq ( L * lua . State ) int { var a1 interface { } _ = LuaToGo ( L , 1 , & a1 ) var a2 interface { } _ = LuaToGo ( L , 2 , & a2 ) L . PushBoolean ( a1 == a2 ) return 1 }
// From Lua's specs: "A metamethod only is selected when both objects being
// compared have the same type and the same metamethod for the selected
// operation." Thus both arguments must be proxies for this function to be
// called. No need to check for type equality: Go's "==" operator will do it for
// us.
From Lua s specs : A metamethod only is selected when both objects being compared have the same type and the same metamethod for the selected operation . Thus both arguments must be proxies for this function to be called . No need to check for type equality : Go s == operator will do it for us .