18 #include <hicn/transport/core/name.h>
28 Prefix(
const char *prefix);
30 Prefix(
const std::string &prefix);
32 Prefix(std::string &&prefix);
34 Prefix(std::string &prefix, uint16_t prefix_length);
38 std::unique_ptr<Sockaddr> toSockaddr()
const;
40 uint16_t getPrefixLength()
const;
42 Prefix &setPrefixLength(uint16_t prefix_length);
44 std::string getNetwork()
const;
48 int contains(
const core::Name &content_name)
const;
52 Name getRandomName()
const;
59 Prefix &setNetwork(std::string &network);
61 int getAddressFamily()
const;
63 Prefix &setAddressFamily(
int address_family);
65 Name makeRandomName()
const;
70 static bool checkPrefixLengthAndAddressFamily(uint16_t prefix_length,
73 void buildPrefix(std::string &prefix, uint16_t prefix_length,
int family);