LookupDefault attempts to return a "default" solver.
()
| 110 | |
| 111 | // LookupDefault attempts to return a "default" solver. |
| 112 | func LookupDefault() (Solver, error) { |
| 113 | if len(registeredSolvers) == 0 { |
| 114 | return nil, fmt.Errorf("no registered solvers") |
| 115 | } |
| 116 | if len(registeredSolvers) == 1 { |
| 117 | for _, solver := range registeredSolvers { |
| 118 | return solver(), nil // return the first and only one |
| 119 | } |
| 120 | } |
| 121 | |
| 122 | // TODO: Should we remove this empty string feature? |
| 123 | // If one was registered with no name, then use that as the default. |
| 124 | if solver, exists := registeredSolvers[""]; exists { // empty name |
| 125 | return solver(), nil |
| 126 | } |
| 127 | |
| 128 | return nil, fmt.Errorf("no registered default solver") |
| 129 | } |
no outgoing calls