25 #ifndef INCLUDED_RoutingExceptions_h_GUID_DDBD7E30_8C15_46AE_4221_1EB366EA079D
26 #define INCLUDED_RoutingExceptions_h_GUID_DDBD7E30_8C15_46AE_4221_1EB366EA079D
43 namespace exceptions {
49 "Attempted to add invalid device name to tree: " +
57 "Cannot use a path with an empty component: " + path) {}
63 : std::runtime_error(
"Cannot specify .. for parent path when "
64 "already at the root!") {}
72 "Cannot specify an absolute path in this context!") {}
79 : std::runtime_error(
"Cannot specify .. in a parent path used "
80 "in this context!") {}
86 : std::runtime_error(
"Cannot retrieve an empty path!") {}
94 "Provided path was not absolute (no leading slash): " +
101 namespace invariants {
104 : std::runtime_error(
"Path tree violated invariant: " +
115 std::string
const &path = std::string())
117 "InterfaceElement parent! " +
124 "parent of some device type! " +
132 #endif // INCLUDED_RoutingExceptions_h_GUID_DDBD7E30_8C15_46AE_4221_1EB366EA079D
Thrown when attempting to use a path with an empty component.
Thrown when attempting to add an invalid device name to the tree.
Thrown when attempting to go to the parent path when forbidden.
Thrown when attempting to go use an absolute path when forbidden.
Thrown when attempting to use a path with no leading slash where an absolute path is required...
Thrown when attempting to go to the parent path from the root.
Thrown when attempting to use an empty path.