struct pakfire_solution* pakfire_solution_ref(struct pakfire_solution* solution);
struct pakfire_solution* pakfire_solution_unref(struct pakfire_solution* solution);
-struct pakfire_solution* pakfire_solution_next(struct pakfire_solution* solution);
-void pakfire_solution_append(struct pakfire_solution* solution, struct pakfire_solution* new_solution);
-
char* pakfire_solution_to_string(struct pakfire_solution* solution);
#endif /* PAKFIRE_SOLUTION_H */
struct pakfire_problem* problem;
Id id;
char** elements;
-
- struct pakfire_solution* next;
};
static void import_elements(struct pakfire_solution* solution) {
static void pakfire_solution_free(struct pakfire_solution* solution) {
pakfire_unref(solution->pakfire);
- if (solution->next)
- pakfire_solution_unref(solution->next);
-
pakfire_problem_unref(solution->problem);
if (solution->elements)
return NULL;
}
-PAKFIRE_EXPORT struct pakfire_solution* pakfire_solution_next(struct pakfire_solution* solution) {
- return solution->next;
-}
-
-PAKFIRE_EXPORT void pakfire_solution_append(struct pakfire_solution* solution, struct pakfire_solution* new_solution) {
- struct pakfire_solution* next;
-
- // Go to last problem in list
- while ((next = pakfire_solution_next(solution)) != NULL) {
- solution = next;
- }
-
- solution->next = pakfire_solution_ref(new_solution);
-}
-
static size_t count_elements_length(struct pakfire_solution* solution) {
size_t length = 0;