@@ -32,25 +32,26 @@ class DocumentNode
3232
3333 virtual std::string Key () const = 0;
3434
35- virtual bool AsBoolean () = 0;
36- virtual std::size_t AsInteger () = 0;
37- virtual double AsDouble () = 0;
38- virtual std::string AsString () = 0;
35+ virtual bool AsBoolean () const = 0;
36+ virtual std::size_t AsInteger () const = 0;
37+ virtual double AsDouble () const = 0;
38+ virtual std::string AsString () const = 0;
3939
40- virtual std::unique_ptr<DocumentNode> GetRequiredChildNode (const std::string &name) = 0;
41- virtual std::unique_ptr<DocumentNode> GetChildNode (const std::string &name) = 0;
40+ virtual std::unique_ptr<DocumentNode> GetRequiredChildNode (const std::string &name) const = 0;
41+ virtual std::unique_ptr<DocumentNode> GetChildNode (const std::string &name) const = 0;
4242
43- virtual bool GetRequiredBoolean (const std::string &name) = 0;
44- virtual bool GetBoolean (const std::string &name, bool default_value) = 0;
43+ virtual bool GetRequiredBoolean (const std::string &name) const = 0;
44+ virtual bool GetBoolean (const std::string &name, bool default_value) const = 0;
4545
46- virtual std::size_t GetRequiredInteger (const std::string &name) = 0;
47- virtual std::size_t GetInteger (const std::string &name, std::size_t default_value) = 0;
46+ virtual std::size_t GetRequiredInteger (const std::string &name) const = 0;
47+ virtual std::size_t GetInteger (const std::string &name, std::size_t default_value) const = 0;
4848
49- virtual double GetRequiredDouble (const std::string &name) = 0;
50- virtual double GetDouble (const std::string &name, double default_value) = 0;
49+ virtual double GetRequiredDouble (const std::string &name) const = 0;
50+ virtual double GetDouble (const std::string &name, double default_value) const = 0;
5151
52- virtual std::string GetRequiredString (const std::string &name) = 0;
53- virtual std::string GetString (const std::string &name, const std::string &default_value) = 0;
52+ virtual std::string GetRequiredString (const std::string &name) const = 0;
53+ virtual std::string GetString (const std::string &name,
54+ const std::string &default_value) const = 0;
5455
5556 virtual DocumentNodeConstIterator begin () const = 0;
5657 virtual DocumentNodeConstIterator end () const = 0;
@@ -62,12 +63,12 @@ class DocumentNode
6263 virtual PropertiesNodeConstIterator end_properties () const = 0;
6364
6465protected:
65- std::string DoSubstitution (const std::string &text);
66- std::string DoOneSubstitution (const std::string &text);
66+ std::string DoSubstitution (const std::string &text) const ;
67+ std::string DoOneSubstitution (const std::string &text) const ;
6768
68- bool BooleanFromString (const std::string &value);
69- std::size_t IntegerFromString (const std::string &value);
70- double DoubleFromString (const std::string &value);
69+ bool BooleanFromString (const std::string &value) const ;
70+ std::size_t IntegerFromString (const std::string &value) const ;
71+ double DoubleFromString (const std::string &value) const ;
7172};
7273
7374class DocumentNodeConstIteratorImpl
0 commit comments