51 lines
2 KiB
MQL5
51 lines
2 KiB
MQL5
//+------------------------------------------------------------------+
|
|
//| 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
|
|
{
|
|
protected:
|
|
CJsonParserStream* m_ctx;
|
|
|
|
public:
|
|
ITsnJsonParserStream() : m_ctx(NULL) {}
|
|
~ITsnJsonParserStream() {}
|
|
|
|
//---
|
|
void MainPointer(CJsonParserStream* v) { m_ctx = v; }
|
|
|
|
//---
|
|
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
|