xo-reader2: + on_f64_token() + handle in DDefineSsm+DProgressSsm

This commit is contained in:
Roland Conybeare 2026-01-22 15:18:35 -05:00
commit a341ac1f06
17 changed files with 41 additions and 16 deletions

View file

@ -134,6 +134,10 @@ xo_add_genfacetimpl(
OUTPUT_CPP_DIR src/expression2
)
# ----------------------------------------------------------------
xo_add_genfacet_all(xo-expression2-genfacet-all)
# ----------------------------------------------------------------
# shared library

View file

@ -19,12 +19,20 @@ namespace xo {
public:
using TaggedPtr = xo::reflect::TaggedPtr;
using TypeDescr = xo::reflect::TypeDescr;
using AAllocator = xo::mm::AAllocator;
using AGCObject = xo::mm::AGCObject;
using typeseq = xo::reflect::typeseq;
public:
explicit DConstant(obj<AGCObject> value) noexcept;
/** create instance
* @p mm memory allocator
* @p value literal constant
**/
static DConstant * make(obj<AAllocator> mm,
obj<AGCObject> value);
bool is_resolved() const noexcept { return typeref_.is_resolved(); }
exprtype extype() const noexcept { return exprtype::constant; }

View file

@ -2,7 +2,7 @@
*
* Generated automagically from ingredients:
* 1. code generator:
* [/Users/roland/proj/xo-umbrella2/xo-facet/codegen/genfacet]
* [/home/roland/proj/xo-umbrella2-claude1/xo-facet/codegen/genfacet]
* arguments:
* --input [idl/Expression.json5]
* 2. jinja2 template for facet .hpp file:

View file

@ -2,7 +2,7 @@
*
* Generated automagically from ingredients:
* 1. code generator:
* [/Users/roland/proj/xo-umbrella2/xo-facet/codegen/genfacet]
* [/home/roland/proj/xo-umbrella2-claude1/xo-facet/codegen/genfacet]
* arguments:
* --input [idl/SymbolTable.json5]
* 2. jinja2 template for facet .hpp file:

View file

@ -2,7 +2,7 @@
*
* Generated automagically from ingredients:
* 1. code generator:
* [/Users/roland/proj/xo-umbrella2/xo-facet/codegen/genfacet]
* [/home/roland/proj/xo-umbrella2-claude1/xo-facet/codegen/genfacet]
* arguments:
* --input [idl/Expression.json5]
* 2. jinja2 template for abstract facet .hpp file:

View file

@ -2,7 +2,7 @@
*
* Generated automagically from ingredients:
* 1. code generator:
* [/Users/roland/proj/xo-umbrella2/xo-facet/codegen/genfacet]
* [/home/roland/proj/xo-umbrella2-claude1/xo-facet/codegen/genfacet]
* arguments:
* --input [idl/Expression.json5]
* 2. jinja2 template for abstract facet .hpp file:

View file

@ -6,13 +6,14 @@
* arguments:
* --input [idl/IExpression_DConstant.json5]
* 2. jinja2 template for abstract facet .hpp file:
* [iface_facet_any.hpp.j2]
* [iface_facet_repr.hpp.j2]
* 3. idl for facet methods
* [idl/IExpression_DConstant.json5]
**/
#pragma once
#include "Expression.hpp"
#include "Expression.hpp"
#include "DConstant.hpp"
@ -40,6 +41,8 @@ namespace xo {
/** @defgroup scm-expression-dconstant-type-traits **/
///@{
using TypeDescr = xo::scm::AExpression::TypeDescr;
using Copaque = xo::scm::AExpression::Copaque;
using Opaque = xo::scm::AExpression::Opaque;
///@}
/** @defgroup scm-expression-dconstant-methods **/
///@{

View file

@ -2,7 +2,7 @@
*
* Generated automagically from ingredients:
* 1. code generator:
* [/Users/roland/proj/xo-umbrella2/xo-facet/codegen/genfacet]
* [/home/roland/proj/xo-umbrella2-claude1/xo-facet/codegen/genfacet]
* arguments:
* --input [idl/IExpression_DVariable.json5]
* 2. jinja2 template for abstract facet .hpp file:
@ -55,7 +55,7 @@ namespace xo {
static TypeDescr valuetype(const DVariable & self) noexcept;
// non-const methods
/** assign to valuetype member. Useful when scaffolding expressions **/
/** assing to valuetype member. Useful when scaffolding expressions **/
static void assign_valuetype(DVariable & self, TypeDescr td) noexcept;
///@}
};
@ -63,4 +63,4 @@ namespace xo {
} /*namespace scm*/
} /*namespace xo*/
/* end */
/* end */

View file

@ -2,7 +2,7 @@
*
* Generated automagically from ingredients:
* 1. code generator:
* [/Users/roland/proj/xo-umbrella2/xo-facet/codegen/genfacet]
* [/home/roland/proj/xo-umbrella2-claude1/xo-facet/codegen/genfacet]
* arguments:
* --input [idl/Expression.json5]
* 2. jinja2 template for abstract facet .hpp file:

View file

@ -2,7 +2,7 @@
*
* Generated automagically from ingredients:
* 1. code generator:
* [/Users/roland/proj/xo-umbrella2/xo-facet/codegen/genfacet]
* [/home/roland/proj/xo-umbrella2-claude1/xo-facet/codegen/genfacet]
* arguments:
* --input [idl/Expression.json5]
* 2. jinja2 template for abstract facet .hpp file:

View file

@ -2,7 +2,7 @@
*
* Generated automagically from ingredients:
* 1. code generator:
* [/Users/roland/proj/xo-umbrella2/xo-facet/codegen/genfacet]
* [/home/roland/proj/xo-umbrella2-claude1/xo-facet/codegen/genfacet]
* arguments:
* --input [idl/SymbolTable.json5]
* 2. jinja2 template for abstract facet .hpp file:

View file

@ -2,7 +2,7 @@
*
* Generated automagically from ingredients:
* 1. code generator:
* [/Users/roland/proj/xo-umbrella2/xo-facet/codegen/genfacet]
* [/home/roland/proj/xo-umbrella2-claude1/xo-facet/codegen/genfacet]
* arguments:
* --input [idl/SymbolTable.json5]
* 2. jinja2 template for abstract facet .hpp file:

View file

@ -2,7 +2,7 @@
*
* Generated automagically from ingredients:
* 1. code generator:
* [/Users/roland/proj/xo-umbrella2/xo-facet/codegen/genfacet]
* [/home/roland/proj/xo-umbrella2-claude1/xo-facet/codegen/genfacet]
* arguments:
* --input [idl/SymbolTable.json5]
* 2. jinja2 template for abstract facet .hpp file:

View file

@ -2,7 +2,7 @@
*
* Generated automagically from ingredients:
* 1. code generator:
* [/Users/roland/proj/xo-umbrella2/xo-facet/codegen/genfacet]
* [/home/roland/proj/xo-umbrella2-claude1/xo-facet/codegen/genfacet]
* arguments:
* --input [idl/SymbolTable.json5]
* 2. jinja2 template for abstract facet .hpp file:

View file

@ -34,6 +34,16 @@ namespace xo {
}
}
DConstant *
DConstant::make(obj<AAllocator> mm,
obj<AGCObject> value)
{
void * mem = mm.alloc(typeseq::id<DConstant>(),
sizeof(DConstant));
return new (mem) DConstant(value);
}
TypeDescr
DConstant::_lookup_td(typeseq tseq)
{

View file

@ -11,7 +11,7 @@
* [idl/IExpression_DConstant.json5]
**/
#include "IExpression_DConstant.hpp"
#include "detail/IExpression_DConstant.hpp"
namespace xo {
namespace scm {

View file

@ -2,7 +2,7 @@
*
* Generated automagically from ingredients:
* 1. code generator:
* [/Users/roland/proj/xo-umbrella2/xo-facet/codegen/genfacet]
* [/home/roland/proj/xo-umbrella2-claude1/xo-facet/codegen/genfacet]
* arguments:
* --input [idl/IExpression_DVariable.json5]
* 2. jinja2 template for abstract facet .hpp file: