This holds the common
solve command. The rules are that you must dispatch
on one of your own types. That's it. No pirates.
Oh and there're
solve! as well.
solve function has the default definition
solve(args...; kwargs...) = solve!(init(args...; kwargs...))
So, we recommend defining
init(::ProblemType, args...; kwargs...) :: SolverType solve!(::SolverType) :: SolutionType
SolutionType are the types defined in
To avoid method ambiguity, the first argument of
must be dispatched on the type defined in your package. For example, do
not define a method such as