commit: ee31ca7a1155fa1c9ffd605929985e77b66f5cb8
Author: Fabian Groffen <grobian <AT> gentoo <DOT> org>
AuthorDate: Fri Sep 20 17:10:52 2019 +0000
Commit: Fabian Groffen <grobian <AT> gentoo <DOT> org>
CommitDate: Fri Sep 20 17:10:52 2019 +0000
URL: https://gitweb.gentoo.org/proj/portage-utils.git/commit/?id=ee31ca7a
libq/atom: return compare results as enum proper
Signed-off-by: Fabian Groffen <grobian <AT> gentoo.org>
libq/atom.c | 8 ++++----
libq/atom.h | 12 +++++++++---
2 files changed, 13 insertions(+), 7 deletions(-)
diff --git a/libq/atom.c b/libq/atom.c
index 4c21a40..8f564eb 100644
--- a/libq/atom.c
+++ b/libq/atom.c
@@ -339,7 +339,7 @@ atom_implode(depend_atom *atom)
free(atom);
}
-static int
+static atom_equality
_atom_compare_match(int ret, atom_operator op)
{
if (op == ATOM_OP_NONE)
@@ -370,7 +370,7 @@ _atom_compare_match(int ret, atom_operator op)
* foo-1 <OLDER> foo-2
* foo-1 <NOT_EQUAL> bar-1
*/
-int
+atom_equality
atom_compare(const depend_atom *data, const depend_atom *query)
{
atom_operator pfx_op;
@@ -620,11 +620,11 @@ atom_compare(const depend_atom *data, const depend_atom
*query)
return _atom_compare_match(NEWER, pfx_op);
}
-int
+atom_equality
atom_compare_str(const char * const s1, const char * const s2)
{
depend_atom *a1, *a2;
- int ret = ERROR;
+ atom_equality ret = ERROR;
a1 = atom_explode(s1);
if (!a1)
diff --git a/libq/atom.h b/libq/atom.h
index 72266d5..43397ad 100644
--- a/libq/atom.h
+++ b/libq/atom.h
@@ -87,12 +87,18 @@ typedef struct {
} depend_atom;
extern const char * const booga[];
-enum { ERROR=0, NOT_EQUAL, EQUAL, NEWER, OLDER };
+typedef enum {
+ ERROR = 0,
+ NOT_EQUAL,
+ EQUAL,
+ NEWER,
+ OLDER
+} atom_equality;
depend_atom *atom_explode(const char *atom);
void atom_implode(depend_atom *atom);
-int atom_compare(const depend_atom *a1, const depend_atom *a2);
-int atom_compare_str(const char * const s1, const char * const s2);
+atom_equality atom_compare(const depend_atom *a1, const depend_atom *a2);
+atom_equality atom_compare_str(const char * const s1, const char * const s2);
char *atom_to_string_r(char *buf, size_t buflen, depend_atom *a);
char *atom_format_r(char *buf, size_t buflen,
const char *format, const depend_atom *atom);