aboutsummaryrefslogtreecommitdiff
path: root/include/version_spec.h
blob: 995d24a0fa3a5c63383c6a22d4f058b140b53824 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#ifndef SPM_VERSION_SPEC_H
#define SPM_VERSION_SPEC_H

#define VERSION_OPERATORS " ~!=<>"
#define VERSION_NOOP 1 << 0
#define VERSION_EQ 1 << 1
#define VERSION_NE 1 << 2
#define VERSION_GT 1 << 3
#define VERSION_LT 1 << 4
#define VERSION_COMPAT 1 << 5

// version_spec.c
char *version_suffix_get_alpha(char *str);
char *version_suffix_get_modifier(char *str);
int64_t version_suffix_modifier_calc(char *str);
int version_suffix_alpha_calc(char *str);
int64_t version_from(const char *version_str);
int version_spec_from(const char *op);
ManifestPackage **find_by_spec(Manifest *manifest, const char *name, const char *op, const char *version_str);

#endif //SPM_VERSION_SPEC_H