2026-07-24 08:54:26 -05:00
|
|
|
//+------------------------------------------------------------------+
|
|
|
|
|
//| Pointer.mq5 |
|
|
|
|
|
//| Copyright 2026, Niquel Mendoza |
|
|
|
|
|
//| https://www.mql5.com |
|
|
|
|
|
//+------------------------------------------------------------------+
|
|
|
|
|
#property copyright "Copyright 2026, Niquel Mendoza"
|
|
|
|
|
#property link "https://www.mql5.com"
|
|
|
|
|
#property version "1.00"
|
|
|
|
|
#property strict
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//+------------------------------------------------------------------+
|
|
|
|
|
//| |
|
|
|
|
|
//+------------------------------------------------------------------+
|
2026-09-03 11:13:49 -05:00
|
|
|
#include "..\\Src\\Json.mqh"
|
2026-07-26 17:14:31 -05:00
|
|
|
#resource "json_pointer.json" as const string g_json
|
2026-07-24 08:54:26 -05:00
|
|
|
|
|
|
|
|
//+------------------------------------------------------------------+
|
|
|
|
|
//| Script program start function |
|
|
|
|
|
//+------------------------------------------------------------------+
|
|
|
|
|
void OnStart()
|
|
|
|
|
{
|
2026-07-26 17:14:31 -05:00
|
|
|
//---
|
|
|
|
|
TSN::CJsonParser parser;
|
|
|
|
|
parser.Assing(g_json);
|
|
|
|
|
parser.CorrectPadding();
|
|
|
|
|
parser.Parse();
|
|
|
|
|
|
|
|
|
|
TSN::CJsonNode root = parser.GetRoot();
|
|
|
|
|
|
|
|
|
|
//---
|
|
|
|
|
Print("--- CJsonNode ---");
|
|
|
|
|
Print(root.Query("/config~1general/riesgo~0maximo").ToDouble(0.0));
|
|
|
|
|
Print(root.Query("/raro~1~0mix~0~11").ToString(""));
|
|
|
|
|
Print(root.Query("/ordenes/2/tags/2").ToString(""));
|
|
|
|
|
|
2026-07-24 08:54:26 -05:00
|
|
|
//---
|
|
|
|
|
TSN::CDomNodeManager manager;
|
|
|
|
|
TSN::CDomNodeBase node(&manager);
|
2026-07-26 17:14:31 -05:00
|
|
|
root.ToDom(&node, &manager);
|
2026-07-24 08:54:26 -05:00
|
|
|
|
2026-07-26 17:14:31 -05:00
|
|
|
//---
|
2026-07-24 14:20:14 -05:00
|
|
|
CJsonPointerResolver resolver;
|
2026-07-24 08:54:26 -05:00
|
|
|
resolver.Base(&node);
|
2026-07-26 17:14:31 -05:00
|
|
|
|
|
|
|
|
Print("--- CJsonPointerResolver ---");
|
|
|
|
|
Print(resolver.Query("/config~1general/riesgo~0maximo").ToDouble(0.0));
|
|
|
|
|
Print(resolver.Query("/raro~1~0mix~0~11").ToString(""));
|
|
|
|
|
Print(resolver.Query("/ordenes/2/tags/2").ToString(""));
|
2026-07-24 08:54:26 -05:00
|
|
|
}
|
|
|
|
|
//+------------------------------------------------------------------+
|