JsonParserByLeo/Test/Err.mq5
Nique_372 87f98380ae
2026-10-19 13:26:09 -05:00

65 lines
2.4 KiB
MQL5

//+------------------------------------------------------------------+
//| Err.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
//+------------------------------------------------------------------+
//| |
//+------------------------------------------------------------------+
#define JSONPARSERBYLEO_DLL
#define JSONPARSERBYLEO_DLL_AVX2
#include "..\\Src\\JsonNode\\JsonNode.mqh"
//+------------------------------------------------------------------+
//| Script program start function |
//+------------------------------------------------------------------+
void OnStart()
{
//---
TSN::CJsonParser parser;
/*
//---
// Len has superated reading json, finding comma or context close (], }) [Line 1, Col 10]
parser.Assing("{\"a\":1.0");
parser.CorrectPadding();
parser.Parse();
parser.ErrorInfo();
//---
// A numeric value was expected after the decimal point. [Line 1, Col 9]
parser.Assing("{\"a\":1.}");
parser.CorrectPadding();
parser.Parse();
parser.ErrorInfo();
//---
// A number in JSON notation cannot have leading zeros. [Line 1, Col 8]
parser.Assing("{\"a\":007}");
parser.CorrectPadding();
parser.Parse();
parser.ErrorInfo();
//---
// Len has superated reading json, finding comma or context close (], }) [Line 2, Col 1]
parser.Assing("{\"a\":\"a}");
parser.CorrectPadding();
parser.Parse();
parser.ErrorInfo();*/
const string s = "{\"ae\":[[10,10],[20,20],[]],\"comida\":\"\\ud83d\\ude00\",\"trapo\":10.05,\"a\":true,\"invalid\":\"<a href=\\\"https://twitter.com/shiawaseomamori\\\" rel=\\\"nofollow\\\">幸せの☆お守り</a>\",\"precios\":[10,20,30,40,50],\"va\":1"
",\"interpolado\":\"${{valor}}\"}";
Print(s);
parser.Assing(s);
parser.CorrectPaddingSimd();
Print(parser.ParseSimd());
parser.PrintCintaTypes(0, WHOLE_ARRAY);
parser.ErrorInfo();
}
//+------------------------------------------------------------------+