Multiple-dispatch depending on output type?

Ok. Is it available as a language feature or is it defined function by function in the core implementation?