diff options
author | Jörg Frings-Fürst <debian@jff-webhosting.net> | 2014-07-23 15:25:44 +0200 |
---|---|---|
committer | Jörg Frings-Fürst <debian@jff-webhosting.net> | 2014-07-23 15:25:44 +0200 |
commit | 8286ac511144e4f17d34eac9affb97e50646344a (patch) | |
tree | f1af7320d7b6be6be059216d0ad08ac7b4f73fd0 /libxsd-frontend/xsd-frontend/parser.hxx | |
parent | a15cf65c44d5c224169c32ef5495b68c758134b7 (diff) |
Imported Upstream version 4.0.0upstream/4.0.0
Diffstat (limited to 'libxsd-frontend/xsd-frontend/parser.hxx')
-rw-r--r-- | libxsd-frontend/xsd-frontend/parser.hxx | 38 |
1 files changed, 20 insertions, 18 deletions
diff --git a/libxsd-frontend/xsd-frontend/parser.hxx b/libxsd-frontend/xsd-frontend/parser.hxx index ac0ff4d..746aa97 100644 --- a/libxsd-frontend/xsd-frontend/parser.hxx +++ b/libxsd-frontend/xsd-frontend/parser.hxx @@ -1,20 +1,18 @@ // file : xsd-frontend/parser.hxx -// author : Boris Kolpackov <boris@codesynthesis.com> -// copyright : Copyright (c) 2005-2010 Code Synthesis Tools CC +// copyright : Copyright (c) 2005-2014 Code Synthesis Tools CC // license : GNU GPL v2 + exceptions; see accompanying LICENSE file #ifndef XSD_FRONTEND_PARSER_HXX #define XSD_FRONTEND_PARSER_HXX -#include <cult/types.hxx> -#include <cult/containers/set.hxx> +#include <set> +#include <memory> // std::auto_ptr +#include <xsd-frontend/types.hxx> #include <xsd-frontend/semantic-graph/schema.hxx> namespace XSDFrontend { - using namespace Cult::Types; - struct InvalidSchema {}; class LocationTranslator @@ -30,46 +28,50 @@ namespace XSDFrontend // Set of disabled warning IDs. Special ID "all" disables all // warnings. // - typedef Cult::Containers::Set<NarrowString> WarningSet; + typedef std::set<NarrowString> WarningSet; - class Parser: public NonCopyable + class Parser { public: ~Parser (); - Parser (Boolean proper_restriction, - Boolean multiple_imports, - Boolean full_schema_check); + Parser (bool proper_restriction, + bool multiple_imports, + bool full_schema_check); - Parser (Boolean proper_restriction, - Boolean multiple_imports, - Boolean full_schema_check, + Parser (bool proper_restriction, + bool multiple_imports, + bool full_schema_check, LocationTranslator&, const WarningSet& disabled); + private: + Parser (Parser const&); + Parser& operator= (Parser const&); + public: // Parse a schema file. Throws InvalidSchema in case of a failure. // - Evptr<SemanticGraph::Schema> + std::auto_ptr<SemanticGraph::Schema> parse (SemanticGraph::Path const&); // Parse a number of schema files all into one semantic graph. // Each schema file is imported from an unnamed root translation // unit. Throws InvalidSchema in case of a failure. // - Evptr<SemanticGraph::Schema> + std::auto_ptr<SemanticGraph::Schema> parse (SemanticGraph::Paths const&); // Returns a schema graph that corresponds to the XML Schema // namespace with built-in type definitions. The path is fake // and is only used as a lable. // - Evptr<SemanticGraph::Schema> + std::auto_ptr<SemanticGraph::Schema> xml_schema (SemanticGraph::Path const&); private: class Impl; - Evptr<Impl> impl_; + std::auto_ptr<Impl> impl_; }; } |