MCPcopy Create free account
hub / github.com/MariaDB/server / MptrJValue

Method MptrJValue

storage/connect/json.cpp:2032–2052  ·  view source on GitHub ↗

/ Replace all value offsets by pointers. */ /

Source from the content-addressed store, hash-verified

2030/* Replace all value offsets by pointers. */
2031/***********************************************************************/
2032PJVAL SWAP::MptrJValue(PJVAL ojv) {
2033 PJVAL jvp = (PJVAL)MakePtr(Base, (size_t)ojv);
2034
2035 jvp = (PJVAL)new((long long)jvp) JVALUE(0);
2036
2037 if (!jvp->Del) {
2038 if (jvp->DataType == TYPE_JSON)
2039 jvp->Jsp = (PJSON)MptrJson(jvp->Jsp);
2040 else if (jvp->DataType == TYPE_STRG)
2041 jvp->Strp = (PSZ)MakePtr(Base, (size_t)jvp->Strp);
2042
2043// if (jvp->Val)
2044// jvp->Val = (PVL)MptrVal(jvp->Val);
2045
2046 } // endif Del
2047
2048 if (jvp->Next)
2049 jvp->Next = (PJVAL)MptrJValue(jvp->Next);
2050
2051 return jvp;
2052} // end of MptrJValue
2053
2054#if 0
2055/***********************************************************************/

Callers

nothing calls this directly

Calls 1

MakePtrFunction · 0.85

Tested by

no test coverage detected