sk_sp<SkShader> SkShader::MakeComposeShader(sk_sp<SkShader> dst, sk_sp<SkShader> src, SkXfermode::Mode mode) { return MakeComposeShader(std::move(dst), std::move(src), SkXfermode::Make(mode)); }
SkShader* SkShader::CreateComposeShader(SkShader* dst, SkShader* src, SkXfermode* xfer) { return MakeComposeShader(sk_ref_sp(dst), sk_ref_sp(src), xfer).release(); }
sk_sp<SkShader> SkShader::MakeComposeShader(sk_sp<SkShader> dst, sk_sp<SkShader> src, SkXfermode* xfer) { return MakeComposeShader(std::move(dst), std::move(src), sk_ref_sp(xfer)); }