What is state_info? A local variable? How would it help if implicit_match could be invoked to do the conversion, it wouldn't have access to state_info any more than +(::C, ::C) does?
I think that we will need a bit more context to be able to understand what problem you are trying to solve, and how that can be best done in Julia.
