Stroika Library 3.0d16
 
Loading...
Searching...
No Matches
Variant/XML/Reader.h
Go to the documentation of this file.
1/*
2 * Copyright(c) Sophist Solutions, Inc. 1990-2025. All rights reserved
3 */
4#ifndef _Stroika_Foundation_DataExchange_Variant_XML_Reader_h_
5#define _Stroika_Foundation_DataExchange_Variant_XML_Reader_h_ 1
6
7#include "Stroika/Foundation/StroikaPreComp.h"
8
9#include "Stroika/Foundation/Common/Common.h"
12#include "Stroika/Foundation/DataExchange/XML/SerializationConfiguration.h"
14
15/**
16 * \file
17 *
18 * TODO:
19 * @todo NotYetImplemented
20 *
21 * @todo fix thread-safety - cloning rep - lock for access config data
22 */
23
24namespace Stroika::Foundation::DataExchange::Variant::XML {
25
26 using DataExchange::XML::SerializationConfiguration;
27
28 /**
29 * @todo
30 * add options for stuff like - special for xml - assumed-outer-doc, stuff abotu namespaces, and st
31 *... todo namespaces - store in string (elt name a:b) and fill in namespace object accordingly.
32
33 define common struct (shared module - in common.h of this I guess? - for serializeation package parmas
34 like "use this tag for arrays" (where empty is an option but hard to read back)", and namespace list, and
35 do or don't include xml processing instruction
36 */
37 class Reader : public Variant::Reader {
38 private:
40
41 private:
42 class Rep_;
43
44 public:
45 Reader (const SerializationConfiguration& config = {});
46
47 public:
48 nonvirtual SerializationConfiguration GetConfiguration () const;
49 nonvirtual void SetConfiguration (const SerializationConfiguration& config);
50
51 private:
52 nonvirtual const Rep_& GetRep_ () const;
53 nonvirtual Rep_& GetRep_ ();
54 };
55
56}
57
58/*
59 ********************************************************************************
60 ***************************** Implementation Details ***************************
61 ********************************************************************************
62 */
63
64#endif /*_Stroika_Foundation_DataExchange_Variant_XML_Reader_h_*/
abstract class specifying interface for readers that map a source like XML or JSON to a VariantValue ...