JsonParserByLeo/Src/JsonSax.mqh

51 lines
2 KiB
MQL5
Raw Permalink Normal View History

2026-08-04 08:01:37 -05:00
//+------------------------------------------------------------------+
//| JsonSax.mqh |
//| Copyright 2026, Niquel Mendoza |
//| https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2026, Niquel Mendoza"
#property link "https://www.mql5.com"
#property strict
#ifndef JSONPARSERBYLEO_SRC_JSONSAX_MQH
#define JSONPARSERBYLEO_SRC_JSONSAX_MQH
//+------------------------------------------------------------------+
//| |
//+------------------------------------------------------------------+
namespace TSN
{
class CJsonParserStream;
//+------------------------------------------------------------------+
//| |
//+------------------------------------------------------------------+
class ITsnJsonParserStream
{
2026-08-04 09:02:31 -05:00
protected:
2026-08-04 08:01:37 -05:00
CJsonParserStream* m_ctx;
public:
2026-08-04 09:02:31 -05:00
ITsnJsonParserStream() : m_ctx(NULL) {}
2026-08-04 08:01:37 -05:00
~ITsnJsonParserStream() {}
2026-08-04 09:02:31 -05:00
//---
void MainPointer(CJsonParserStream* v) { m_ctx = v; }
//---
2026-08-04 08:01:37 -05:00
virtual void OnStartDocument() = 0;
virtual void OnEndDocument() = 0;
virtual void OnStartObj() = 0;
virtual void OnEndObJ() = 0;
virtual void OnStartArr() = 0;
virtual void OnEndArr() = 0;
virtual void OnInteger(long v) = 0;
virtual void OnReal(double v) = 0;
virtual void OnString(int s, int len) = 0;
virtual void OnBool(bool v) = 0;
virtual void OnNull() = 0;
virtual void OnKey(int s, int len) = 0;
};
}
//+------------------------------------------------------------------+
#endif // JSONPARSERBYLEO_SRC_JSONSAX_MQH