1.1 --- a/razor.h Thu Jan 03 09:32:31 2008 -0500
1.2 +++ b/razor.h Thu Jan 10 21:08:03 2008 -0500
1.3 @@ -4,6 +4,8 @@
1.4 #define ARRAY_SIZE(a) (sizeof(a) / sizeof((a)[0]))
1.5
1.6 struct razor_set;
1.7 +struct razor_package;
1.8 +struct razor_property;
1.9
1.10 enum razor_property_type {
1.11 RAZOR_PROPERTY_REQUIRES,
1.12 @@ -17,7 +19,33 @@
1.13 void razor_set_destroy(struct razor_set *set);
1.14 int razor_set_write(struct razor_set *set, const char *filename);
1.15
1.16 -void razor_set_list(struct razor_set *set, const char *pattern);
1.17 +struct razor_package *
1.18 +razor_set_get_package(struct razor_set *set, const char *package);
1.19 +
1.20 +struct razor_property *
1.21 +razor_set_get_property(struct razor_set *set, const char *property);
1.22 +
1.23 +struct razor_package_iterator;
1.24 +struct razor_package_iterator *
1.25 +razor_package_iterator_create(struct razor_set *set);
1.26 +
1.27 +int razor_package_iterator_next(struct razor_package_iterator *pi,
1.28 + struct razor_package **package,
1.29 + const char **name, const char **version);
1.30 +void razor_package_iterator_destroy(struct razor_package_iterator *pi);
1.31 +
1.32 +struct razor_property_iterator;
1.33 +struct razor_property_iterator *
1.34 +razor_property_iterator_create(struct razor_set *set,
1.35 + struct razor_package *package);
1.36 +int razor_property_iterator_next(struct razor_property_iterator *pi,
1.37 + struct razor_property **property,
1.38 + const char **name, const char **version,
1.39 + enum razor_property_type *type);
1.40 +void
1.41 +razor_property_iterator_destroy(struct razor_property_iterator *pi);
1.42 +
1.43 +
1.44 void razor_set_list_properties(struct razor_set *set, const char *name,
1.45 enum razor_property_type type);
1.46 void razor_set_list_property_packages(struct razor_set *set,