cesium-native  0.41.0
IgnoreValueJsonHandler.h
1 #pragma once
2 
3 #include "IJsonHandler.h"
4 #include "Library.h"
5 
6 #include <cstdint>
7 
8 namespace CesiumJsonReader {
9 class CESIUMJSONREADER_API IgnoreValueJsonHandler : public IJsonHandler {
10 public:
11  void reset(IJsonHandler* pParent) noexcept;
12 
13  virtual IJsonHandler* readNull() override;
14  virtual IJsonHandler* readBool(bool b) override;
15  virtual IJsonHandler* readInt32(int32_t i) override;
16  virtual IJsonHandler* readUint32(uint32_t i) override;
17  virtual IJsonHandler* readInt64(int64_t i) override;
18  virtual IJsonHandler* readUint64(uint64_t i) override;
19  virtual IJsonHandler* readDouble(double d) override;
20  virtual IJsonHandler* readString(const std::string_view& str) override;
21  virtual IJsonHandler* readObjectStart() override;
22  virtual IJsonHandler* readObjectKey(const std::string_view& str) override;
23  virtual IJsonHandler* readObjectEnd() override;
24  virtual IJsonHandler* readArrayStart() override;
25  virtual IJsonHandler* readArrayEnd() override;
26 
27  virtual void reportWarning(
28  const std::string& warning,
29  std::vector<std::string>&& context = std::vector<std::string>()) override;
30 
31  IJsonHandler* parent() noexcept;
32 
33 private:
34  IJsonHandler* _pParent = nullptr;
35  int32_t _depth = 0;
36 };
37 } // namespace CesiumJsonReader
Classes for reading JSON.