2025/10/08

From Woozle Writes Code
< 2025
Revision as of 16:21, 8 October 2025 by Woozle (talk | contribs)
Jump to navigation Jump to search
Codeblog

Recovered

EngDbExport is calling Schema::FromParams(), which isn't defined in cSchema's clade family; trying to figure out what the correct call is.

  • The function is defined in ToSchema, which is not a parent of Schema.
  • It's expecting to initialize an object with a Go() function. The cSchema class does in fact have that method, and appears to be what we want, so the question is how to create or access the object.
  • Apparently a cSchema object is normally created using InputRq::FromItemPiece().
  • That, however, is for use when we're still parsing the input; this is a different context. We just want to pass it some already-known parameters.
  • Therefore: we probably need to make a new alt-constructor.
  • To investigate: what does FromItemPiece(ItemIface $oItem, PieceIface $oPiece) do? Tentative answer:
    • If $oPiece has a value, parses it with ParseInputArgs($oPiece->GetExtras()); otherwise, fetches a default. Either way, the value ends up in $sVal.
    • Calls WithItemValue($oItem,$sVal), which does: