6 AronDatatypeConverterVisitor::visitAronVariant(
const type::ObjectPtr& el)
10 dict->addElement(TYPE_MEMBER_NAME, type);
12 for (
const auto& [key, child] : el->getMemberTypes())
14 AronDatatypeConverterVisitor converter;
17 dict->addElement(key, converter.latest);
24 AronDatatypeConverterVisitor::visitAronVariant(
const type::DictPtr& el)
28 dict->addElement(TYPE_MEMBER_NAME, type);
30 auto acceptedType = el->getAcceptedType();
31 AronDatatypeConverterVisitor converter;
33 dict->addElement(ACCEPTED_TYPE_MEMBER_NAME, converter.latest);
39 AronDatatypeConverterVisitor::visitAronVariant(
const type::ListPtr& el)
43 dict->addElement(TYPE_MEMBER_NAME, type);
45 auto acceptedType = el->getAcceptedType();
46 AronDatatypeConverterVisitor converter;
48 dict->addElement(ACCEPTED_TYPE_MEMBER_NAME, converter.latest);
54 AronDatatypeConverterVisitor::visitAronVariant(
const type::PairPtr& el)
58 dict->addElement(TYPE_MEMBER_NAME, type);
60 auto acceptedType1 = el->getFirstAcceptedType();
61 AronDatatypeConverterVisitor converter1;
63 dict->addElement(FIRST_ACCEPTED_TYPE_MEMBER_NAME, converter1.latest);
65 auto acceptedType2 = el->getSecondAcceptedType();
66 AronDatatypeConverterVisitor converter2;
68 dict->addElement(SECOND_ACCEPTED_TYPE_MEMBER_NAME, converter2.latest);
74 AronDatatypeConverterVisitor::visitAronVariant(
const type::TuplePtr& el)
78 dict->addElement(TYPE_MEMBER_NAME, type);
81 for (
const auto& child : el->getAcceptedTypes())
83 AronDatatypeConverterVisitor converter;
86 dict->addElement(std::string(ACCEPTED_TYPE_MEMBER_NAME) +
"_" +
std::to_string(i++),
94 AronDatatypeConverterVisitor::visitAronVariant(
const type::MatrixPtr& el)
118 AronDatatypeConverterVisitor::visitAronVariant(
const type::ImagePtr& el)
130 AronDatatypeConverterVisitor::visitAronVariant(
const type::IntPtr& el)
136 AronDatatypeConverterVisitor::visitAronVariant(
const type::LongPtr& el)
142 AronDatatypeConverterVisitor::visitAronVariant(
const type::FloatPtr& el)
148 AronDatatypeConverterVisitor::visitAronVariant(
const type::DoublePtr& el)
154 AronDatatypeConverterVisitor::visitAronVariant(
const type::BoolPtr& el)
160 AronDatatypeConverterVisitor::visitAronVariant(
const type::StringPtr& el)