impl.release();
}
-template <> auto StorageBackendSerialized::getPolicySet<ldp_xml_parser::MatchItemOwn>() const {
+template <> inline auto StorageBackendSerialized::getPolicySet<ldp_xml_parser::MatchItemOwn>() const {
return impl.fileGetOwnSet(impl.getFile());
}
-template <> auto StorageBackendSerialized::getPolicySet<ldp_xml_parser::MatchItemSend>() const {
+template <> inline auto StorageBackendSerialized::getPolicySet<ldp_xml_parser::MatchItemSend>() const {
return impl.fileGetSendSet(impl.getFile());
}
-template <> auto StorageBackendSerialized::getPolicySet<ldp_xml_parser::MatchItemReceive>() const {
+template <> inline auto StorageBackendSerialized::getPolicySet<ldp_xml_parser::MatchItemReceive>() const {
return impl.fileGetReceiveSet(impl.getFile());
}
-template <> auto StorageBackendSerialized::getPolicySet<ldp_xml_parser::MatchItemAccess>() const {
+template <> inline auto StorageBackendSerialized::getPolicySet<ldp_xml_parser::MatchItemAccess>() const {
return impl.fileGetAccessSet(impl.getFile());
}
template <typename DI>
-ldp_xml_parser::DecisionItem StorageBackendSerialized::makeDecisionItem(const DI &item) const {
+inline ldp_xml_parser::DecisionItem StorageBackendSerialized::makeDecisionItem(const DI &item) const {
return ldp_xml_parser::DecisionItem(makeDecision(impl.decisionItemGetDecision(item)),
impl.stringGetCStr(impl.decisionItemGetPrivilege(item)));
}
template <typename String>
-boost::string_ref StorageBackendSerialized::toStringRef(const String &str) const {
+inline boost::string_ref StorageBackendSerialized::toStringRef(const String &str) const {
return boost::string_ref(impl.stringGetCStr(str), impl.stringGetSize(str));
}
template <typename T, typename I>
-bool StorageBackendSerialized::match(const T &match, const I &item) const {
+inline bool StorageBackendSerialized::match(const T &match, const I &item) const {
return match.match(makeMessageType(impl.itemSrGetMessageType(item)),
toStringRef(impl.itemSrGetInterface(item)),
toStringRef(impl.itemSrGetPath(item)),
}
template <typename I>
-bool StorageBackendSerialized::match(const ldp_xml_parser::MatchItemAccess &match, const I &item) const {
+inline bool StorageBackendSerialized::match(const ldp_xml_parser::MatchItemAccess &match, const I &item) const {
return match.match(makeBusAccessType(impl.itemAccessGetType(item)), impl.itemAccessGetUid(item), impl.itemAccessGetGid(item));
}
template <typename T, typename P>
-ldp_xml_parser::DecisionItem StorageBackendSerialized::getDecisionItem(const T &item, const P &policy, ldp_serialization::ItemsType) const {
+inline ldp_xml_parser::DecisionItem StorageBackendSerialized::getDecisionItem(const T &item, const P &policy, ldp_serialization::ItemsType) const {
auto v = impl.policyGetItems(policy);
auto rend = impl.containerGetReverseIteratorEnd(v);
for (auto rit = impl.containerGetReverseIterator(v); rit != rend; ++rit) {
}
template <typename P>
-ldp_xml_parser::DecisionItem StorageBackendSerialized::getDecisionItem(const ldp_xml_parser::MatchItemSend &item, const P &policy) const {
+inline ldp_xml_parser::DecisionItem StorageBackendSerialized::getDecisionItem(const ldp_xml_parser::MatchItemSend &item, const P &policy) const {
if (!impl.policyHasIndex(policy))
return getDecisionItem(item, policy, ldp_serialization::ItemsType()); // make it old way for old databases
}
template <typename OwnNode>
-auto StorageBackendSerialized::getDecisionItemFromTree(const OwnNode &node,
+inline auto StorageBackendSerialized::getDecisionItemFromTree(const OwnNode &node,
const tokenizer::iterator &tokens_end,
tokenizer::iterator &iterator) const {
if (iterator == tokens_end) {
}
template <typename T, typename P>
-ldp_xml_parser::DecisionItem StorageBackendSerialized::getDecisionItem(const T &item, const P &policy, ldp_serialization::TreeType) const {
+inline ldp_xml_parser::DecisionItem StorageBackendSerialized::getDecisionItem(const T &item, const P &policy, ldp_serialization::TreeType) const {
if (item.getName().length() == 0)
return ldp_xml_parser::Decision::DENY;
}
template <typename T, typename P>
-ldp_xml_parser::DecisionItem StorageBackendSerialized::getDecisionItem(const T &item, const P &policy) const {
+inline ldp_xml_parser::DecisionItem StorageBackendSerialized::getDecisionItem(const T &item, const P &policy) const {
return getDecisionItem(item, policy, typename ldp_serialization::PolicyContentType<P>::result());
}
}
template <typename MatchItem, typename Map>
-ldp_xml_parser::DecisionItem StorageBackendSerialized::getDecisionItem(const MatchItem &item, const Map &map, id_t id) const {
+inline ldp_xml_parser::DecisionItem StorageBackendSerialized::getDecisionItem(const MatchItem &item, const Map &map, id_t id) const {
if (impl.containerEmpty(map))
return ldp_xml_parser::Decision::ANY;
void releaseFD();
template <typename MatchItem>
- auto getPolicySet() const;
+ inline auto getPolicySet() const;
template <typename T, typename P>
- ldp_xml_parser::DecisionItem getDecisionItem(const T &item, const P &policy, ldp_serialization::ItemsType) const;
+ inline ldp_xml_parser::DecisionItem getDecisionItem(const T &item, const P &policy, ldp_serialization::ItemsType) const;
template <typename T, typename P>
- ldp_xml_parser::DecisionItem getDecisionItem(const T &item, const P &policy, ldp_serialization::TreeType) const;
+ inline ldp_xml_parser::DecisionItem getDecisionItem(const T &item, const P &policy, ldp_serialization::TreeType) const;
template <typename T, typename P>
- ldp_xml_parser::DecisionItem getDecisionItem(const T &item, const P &policy) const;
+ inline ldp_xml_parser::DecisionItem getDecisionItem(const T &item, const P &policy) const;
template <typename P>
- ldp_xml_parser::DecisionItem getDecisionItem(const ldp_xml_parser::MatchItemSend &item, const P &policy) const;
+ inline ldp_xml_parser::DecisionItem getDecisionItem(const ldp_xml_parser::MatchItemSend &item, const P &policy) const;
template <typename MatchItem, typename Map>
- ldp_xml_parser::DecisionItem getDecisionItem(const MatchItem &item, const Map &map, id_t id) const;
+ inline ldp_xml_parser::DecisionItem getDecisionItem(const MatchItem &item, const Map &map, id_t id) const;
typedef boost::tokenizer<boost::char_separator<char>> tokenizer;
template <typename OwnNode>
- auto getDecisionItemFromTree(const OwnNode &node,
- const tokenizer::iterator &tokens,
- tokenizer::iterator &iterator) const;
+ inline auto getDecisionItemFromTree(const OwnNode &node,
+ const tokenizer::iterator &tokens,
+ tokenizer::iterator &iterator) const;
template <typename T, typename I>
- bool match(const T &match, const I &item) const;
+ inline bool match(const T &match, const I &item) const;
template <typename I>
- bool match(const ldp_xml_parser::MatchItemAccess &match, const I &item) const;
+ inline bool match(const ldp_xml_parser::MatchItemAccess &match, const I &item) const;
template <typename DI>
- ldp_xml_parser::DecisionItem makeDecisionItem(const DI &item) const;
+ inline ldp_xml_parser::DecisionItem makeDecisionItem(const DI &item) const;
template <typename String>
- boost::string_ref toStringRef(const String &str) const;
+ inline boost::string_ref toStringRef(const String &str) const;
};
}