chiark / gitweb /
unit: Move UnitLoadState definitions from core/unit.c to shared/unit-name.c
[elogind.git] / src / shared / unit-name.h
index 4c793c5a7ef56da3ff59a71a17cea9c6d143f116..c6c09dd31feb5136680594b649f1cb6d2e5c699d 100644 (file)
@@ -27,6 +27,7 @@
 #define UNIT_NAME_MAX 256
 
 typedef enum UnitType UnitType;
+typedef enum UnitLoadState UnitLoadState;
 
 enum UnitType {
         UNIT_SERVICE = 0,
@@ -43,17 +44,32 @@ enum UnitType {
         _UNIT_TYPE_INVALID = -1
 };
 
+enum UnitLoadState {
+        UNIT_STUB,
+        UNIT_LOADED,
+        UNIT_ERROR,
+        UNIT_MERGED,
+        UNIT_MASKED,
+        _UNIT_LOAD_STATE_MAX,
+        _UNIT_LOAD_STATE_INVALID = -1
+};
+
 const char *unit_type_to_string(UnitType i);
 UnitType unit_type_from_string(const char *s);
 
+const char *unit_load_state_to_string(UnitLoadState i);
+UnitLoadState unit_load_state_from_string(const char *s);
+
 int unit_name_to_instance(const char *n, char **instance);
 char* unit_name_to_prefix(const char *n);
 char* unit_name_to_prefix_and_instance(const char *n);
 
-bool unit_name_is_valid_no_type(const char *n, bool template_ok);
+bool unit_name_is_valid(const char *n, bool template_ok);
 bool unit_prefix_is_valid(const char *p);
 bool unit_instance_is_valid(const char *i);
 
+UnitType unit_name_to_type(const char *n);
+
 char *unit_name_change_suffix(const char *n, const char *suffix);
 
 char *unit_name_build(const char *prefix, const char *instance, const char *suffix);