/** @file DConstant.cpp * * @author Roland Conybeare, Jan 2026 **/ #include "DConstant.hpp" #include "TypeDescr.hpp" #include #include #include #include namespace xo { using xo::scm::DFloat; using xo::scm::DInteger; using xo::reflect::Reflect; using xo::reflect::TypeDescr; using xo::reflect::typeseq; namespace scm { DConstant::DConstant(obj value) noexcept : //typeref_{TypeRef::resolved(td)}, value_{value} { // todo: use ObjectConverter here auto tseq = value_._typeseq(); TypeDescr td = this->_lookup_td(tseq); if (td) { typeref_ = TypeRef::resolved(td); } } TypeDescr DConstant::_lookup_td(typeseq tseq) { if (tseq == typeseq::id()) { /* double */ return Reflect::require(); } else if (tseq == typeseq::id()) { /* long */ return Reflect::require(); } return nullptr; } } /*namespace scm*/ } /*namespace xo*/ /* end DConstant.cpp */