xo-numeric: attach type to numeric primitives

This commit is contained in:
Roland Conybeare 2026-03-16 13:51:51 -05:00
commit 4039926d33
3 changed files with 127 additions and 37 deletions

View file

@ -20,26 +20,34 @@ namespace xo {
/** polymorphic (in both arguments1) multiply **/
static DPrimitive_gco_2_gco_gco * make_multiply_pm(obj<AAllocator> mm,
StringTable * stbl);
/** polymorphic (in both arguments) divide **/
static DPrimitive_gco_2_gco_gco * make_divide_pm(obj<AAllocator> mm);
static DPrimitive_gco_2_gco_gco * make_divide_pm(obj<AAllocator> mm,
StringTable * stbl);
/** polymorphic (in both arguments) add **/
static DPrimitive_gco_2_gco_gco * make_add_pm(obj<AAllocator> mm);
static DPrimitive_gco_2_gco_gco * make_add_pm(obj<AAllocator> mm,
StringTable * stbl);
/** polymorphic (in both arguments) subtract **/
static DPrimitive_gco_2_gco_gco * make_subtract_pm(obj<AAllocator> mm);
static DPrimitive_gco_2_gco_gco * make_subtract_pm(obj<AAllocator> mm,
StringTable * stbl);
/** polymorphic (in both arguments) compare (==) **/
static DPrimitive_gco_2_gco_gco * make_cmpeq_pm(obj<AAllocator> mm);
static DPrimitive_gco_2_gco_gco * make_cmpeq_pm(obj<AAllocator> mm,
StringTable * stbl);
/** polymorphic (in both arguments) compare (!=) **/
static DPrimitive_gco_2_gco_gco * make_cmpne_pm(obj<AAllocator> mm);
static DPrimitive_gco_2_gco_gco * make_cmpne_pm(obj<AAllocator> mm,
StringTable * stbl);
/** polymorphic (in both arguments) compare (<) **/
static DPrimitive_gco_2_gco_gco * make_cmplt_pm(obj<AAllocator> mm);
static DPrimitive_gco_2_gco_gco * make_cmplt_pm(obj<AAllocator> mm,
StringTable * stbl);
/** polymorphic (in both arguments) compare (<=) **/
static DPrimitive_gco_2_gco_gco * make_cmple_pm(obj<AAllocator> mm);
static DPrimitive_gco_2_gco_gco * make_cmple_pm(obj<AAllocator> mm,
StringTable * stbl);
/** polymorphic (in both arguments) compare (>) **/
static DPrimitive_gco_2_gco_gco * make_cmpgt_pm(obj<AAllocator> mm);
static DPrimitive_gco_2_gco_gco * make_cmpgt_pm(obj<AAllocator> mm,
StringTable * stbl);
/** polymorphic (in both arguments) compare (>=) **/
static DPrimitive_gco_2_gco_gco * make_cmpge_pm(obj<AAllocator> mm);
static DPrimitive_gco_2_gco_gco * make_cmpge_pm(obj<AAllocator> mm,
StringTable * stbl);
};
}
}