4#include "Stroika/Foundation/StroikaPreComp.h"
12using namespace Stroika::Foundation::DataExchange::XML;
13using namespace Stroika::Foundation::DataExchange::XML::Resource;
20String Name::ToString ()
const
25 sb <<
"namespace: "sv << *fNamespace;
28 sb <<
", PublicID: "sv << *fPublicID;
31 sb <<
", systemID: "sv << *fSystemID;
47 struct R : IResolverRep {
52 virtual optional<Definition> Lookup (
const Name& n)
const override
55 for (
auto i : fDefs_) {
56 if (n.fNamespace != nullopt and n.fNamespace == i.fName.fNamespace) {
59 if (n.fPublicID != nullopt and n.fPublicID == i.fName.fPublicID) {
63 for (
auto i : fDefs_) {
64 if (n.fSystemID != nullopt and n.fSystemID == i.fName.fSystemID) {
Similar to String, but intended to more efficiently construct a String. Mutable type (String is large...
nonvirtual size_t size() const noexcept
nonvirtual void ShrinkTo(size_t sz) noexcept
String is like std::u32string, except it is much easier to use, often much more space efficient,...
Iterable<T> is a base class for containers which easily produce an Iterator<T> to traverse them.