ExpressEvalByLeo/Src/Common/NodeUtils.mqh

77 lines
2.9 KiB
MQL5
Raw Permalink Normal View History

2026-05-14 14:13:20 -05:00
//+------------------------------------------------------------------+
//| NodeUtils.mqh |
//| Copyright 2026, Niquel Mendoza. |
//| https://www.mql5.com/es/users/nique_372/news |
//+------------------------------------------------------------------+
#property copyright "Copyright 2026, Niquel Mendoza."
#property link "https://www.mql5.com/es/users/nique_372/news"
#property strict
//+------------------------------------------------------------------+
//| |
//+------------------------------------------------------------------+
#include "Node.mqh"
//+------------------------------------------------------------------+
//| |
//+------------------------------------------------------------------+
class CNodeUtils
{
public:
CNodeUtils(void) {}
~CNodeUtils(void) {}
static void PrintValue(IValor* val);
};
//+------------------------------------------------------------------+
//| |
//+------------------------------------------------------------------+
static void CNodeUtils::PrintValue(IValor* val)
{
switch(val.m_data_type)
{
case TYPE_BOOL:
Print("Valor [bool]: ", ((IValorSimpleValue<bool>*)val).Get());
break;
case TYPE_CHAR:
Print("Valor [char]: ", ((IValorSimpleValue<char>*)val).Get());
break;
case TYPE_UCHAR:
Print("Valor [uchar]: ", ((IValorSimpleValue<uchar>*)val).Get());
break;
case TYPE_SHORT:
Print("Valor [short]: ", ((IValorSimpleValue<short>*)val).Get());
break;
case TYPE_USHORT:
Print("Valor [ushort]: ", ((IValorSimpleValue<ushort>*)val).Get());
break;
case TYPE_COLOR:
Print("Valor [color]: ", ((IValorSimpleValue<color>*)val).Get());
break;
case TYPE_INT:
Print("Valor [int]: ", ((IValorSimpleValue<int>*)val).Get());
break;
case TYPE_UINT:
Print("Valor [uint]: ", ((IValorSimpleValue<uint>*)val).Get());
break;
case TYPE_DATETIME:
Print("Valor [datetime]: ", ((IValorSimpleValue<datetime>*)val).Get());
break;
case TYPE_LONG:
Print("Valor [long]: ", ((IValorSimpleValue<long>*)val).Get());
break;
case TYPE_ULONG:
Print("Valor [ulong]: ", ((IValorSimpleValue<ulong>*)val).Get());
break;
case TYPE_FLOAT:
Print("Valor [float]: ", ((IValorSimpleValue<float>*)val).Get());
break;
case TYPE_DOUBLE:
Print("Valor [double]: ", ((IValorSimpleValue<double>*)val).Get());
break;
default:
Print("Valor [desconocido]: tipo=", val.m_data_type);
break;
}
}
//+------------------------------------------------------------------+