aboutsummaryrefslogtreecommitdiff
path: root/xml/qname
diff options
context:
space:
mode:
authorKaren Arutyunov <karen@codesynthesis.com>2017-05-02 21:26:58 +0300
committerKaren Arutyunov <karen@codesynthesis.com>2017-05-02 23:55:21 +0300
commit424e315dfa9a78aebf0653c95f83fe6ed452dd8e (patch)
tree59759d1d4eac4096df104d4dbab24a531ada3399 /xml/qname
parent3d2b5b2a7064abe35614ebb32db03bd2881adcf0 (diff)
Add hxx extension for headers and libstud prefix for library dir
Diffstat (limited to 'xml/qname')
-rw-r--r--xml/qname86
1 files changed, 0 insertions, 86 deletions
diff --git a/xml/qname b/xml/qname
deleted file mode 100644
index e49eb29..0000000
--- a/xml/qname
+++ /dev/null
@@ -1,86 +0,0 @@
-// file : xml/qname -*- C++ -*-
-// copyright : Copyright (c) 2013-2017 Code Synthesis Tools CC
-// license : MIT; see accompanying LICENSE file
-
-#ifndef XML_QNAME
-#define XML_QNAME
-
-#include <xml/details/pre.hxx>
-
-#include <string>
-#include <iosfwd>
-
-#include <xml/forward>
-
-#include <xml/details/export.hxx>
-
-namespace xml
-{
- // Note that the optional prefix is just a "syntactic sugar". In
- // particular, it is ignored by the comparison operators and the
- // std::ostream insertion operator.
- //
- class LIBSTUDXML_EXPORT qname
- {
- public:
- qname () {}
- qname (const std::string& name): name_ (name) {}
- qname (const std::string& ns, const std::string& name)
- : ns_ (ns), name_ (name) {}
- qname (const std::string& ns,
- const std::string& name,
- const std::string& prefix)
- : ns_ (ns), name_ (name), prefix_ (prefix) {}
-
- const std::string& namespace_ () const {return ns_;}
- const std::string& name () const {return name_;}
- const std::string& prefix () const {return prefix_;}
-
- std::string& namespace_ () {return ns_;}
- std::string& name () {return name_;}
- std::string& prefix () {return prefix_;}
-
- bool
- empty () const {return name_.empty () && ns_.empty ();}
-
- // String representation in the [<namespace>#]<name> form.
- //
- std::string
- string () const;
-
- // Note that comparison operators ignore prefixes.
- //
- public:
- friend bool
- operator< (const qname& x, const qname& y)
- {
- return x.ns_ < y.ns_ || (x.ns_ == y.ns_ && x.name_ < y.name_);
- }
-
- friend bool
- operator== (const qname& x, const qname& y)
- {
- return x.ns_ == y.ns_ && x.name_ == y.name_;
- }
-
- friend bool
- operator!= (const qname& x, const qname& y)
- {
- return !(x == y);
- }
-
- private:
- std::string ns_;
- std::string name_;
- std::string prefix_;
- };
-
- // Print the string representation ([<namespace>#]<name>).
- //
- LIBSTUDXML_EXPORT std::ostream&
- operator<< (std::ostream&, const qname&);
-}
-
-#include <xml/details/post.hxx>
-
-#endif // XML_QNAME