Dispatch on plot recipe

I have a problem with Plot recipe in Plots.jl. I have a plot for an abstracttype that I want to use for a concrete type. How can I do this?

RecipesBase.@recipe function Plots(contres::AbstractBranchResult)
    # do the plot of contres
# specialiation
RecipesBase.@recipe function Plots(contres::T) where {T :< AbstractBranchResult}
    # change some options and send it to the previous plot recipe

However, this is an infinite loop. I tried putting keywords arg to differentiate them but they get absorbed in the plot recipe (ie sent to plot, scatter…). If you have an idea, I am interested! (

Thank you for your help

Have you already checked this related post out?

not until now, thanks