// file : xsd/cxx/xml/elements.txx // copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC // license : GNU GPL v2 + exceptions; see accompanying LICENSE file namespace xsd { namespace cxx { namespace xml { // properties // template void properties:: schema_location (const std::basic_string& ns, const std::basic_string& loc) { if (ns.empty () || loc.empty ()) throw argument (); if (!schema_location_.empty ()) schema_location_ += C (' '); schema_location_ += ns + C (' ') + loc; } template void properties:: no_namespace_schema_location (const std::basic_string& loc) { if (loc.empty ()) throw argument (); if (!no_namespace_schema_location_.empty ()) no_namespace_schema_location_ += C (' '); no_namespace_schema_location_ += loc; } // // template std::basic_string prefix (const std::basic_string& n) { std::size_t i (0); while (i < n.length () && n[i] != ':') ++i; return std::basic_string (n, i == n.length () ? i : 0, i); } template std::basic_string uq_name (const std::basic_string& n) { std::size_t i (0); while (i < n.length () && n[i] != ':') ++i; return std::basic_string ( n.c_str () + (i == n.length () ? 0 : i + 1)); } } } }