void CE_SetArg (CodeEntry* E, const char* Arg) /* Replace the argument by the new one. */ { /* Free the old argument */ FreeArg (E->Arg); /* Assign the new one */ E->Arg = GetArgCopy (Arg); }
void CE_ClearJumpTo (CodeEntry* E) /* Clear the JumpTo entry and the argument (which contained the name of the ** label). Note: The function will not clear the backpointer from the label, ** so use it with care. */ { /* Clear the JumpTo entry */ E->JumpTo = 0; /* Clear the argument and assign the empty one */ FreeArg (E->Arg); E->Arg = EmptyArg; }
void FreeCodeEntry (CodeEntry* E) /* Free the given code entry */ { /* Free the string argument if we have one */ FreeArg (E->Arg); /* Cleanup the collection */ DoneCollection (&E->Labels); /* Release the line info */ ReleaseLineInfo (E->LI); /* Delete the register info */ CE_FreeRegInfo (E); /* Free the entry */ xfree (E); }
xRedisConnectorBase::~xRedisConnectorBase() { FreeArg(); }