I'm not sure if such a method can be created, but you wouldn't be able
to call it anyway; foo.meth(...) = ... is a syntax error, regardless
of the parameters or right hand side of '='.

An alternative could be to have meth2(a,b) return a container for the
value you're wanting to set, and use:

foo.meth2(a, b).value = value

where .value is a method on the container object returned by meth2.

While () = is a syntax error, you can use [] =, by overloading the
square brackets, if that does what you want.

e.g.

def [](a,b)
  # return the value at that index
end

def []=(a,b)
  # set the value at that index
end

Then use it like:
foo[:fizz, :buzz]
=> nil

foo[:fizz, :buzz] = 42
=> 42

foo[:fizz, :buzz]
=> 42