Home | History | Annotate | Download | only in dist

Lines Matching refs:pTree

47752   struct RowSetEntry *p, *pTree;
47768 for(pTree = pRowSet->pForest; pTree; pTree=pTree->pRight){
47769 ppPrevTree = &pTree->pRight;
47770 if( pTree->pLeft==0 ){
47771 pTree->pLeft = rowSetListToTree(p);
47775 rowSetTreeToList(pTree->pLeft, &pAux, &pTail);
47776 pTree->pLeft = 0;
47780 if( pTree==0 ){
47781 *ppPrevTree = pTree = rowSetEntryAlloc(pRowSet);
47782 if( pTree ){
47783 pTree->v = 0;
47784 pTree->pRight = 0;
47785 pTree->pLeft = rowSetListToTree(p);
47798 for(pTree = pRowSet->pForest; pTree; pTree=pTree->pRight){
47799 p = pTree->pLeft;
159086 SegmentNode *pTree; /* Pointer to interior tree structure */
160902 SegmentNode *pTree = *ppTree;
160909 if( pTree ){
160910 int nData = pTree->nData; /* Current size of node in bytes */
160915 nPrefix = fts3PrefixCompress(pTree->zTerm, pTree->nTerm, zTerm, nTerm);
160919 if( nReq<=p->nNodeSize || !pTree->zTerm ){
160929 assert( pTree->aData==(char *)&pTree[1] );
160930 pTree->aData = (char *)sqlite3_malloc(nReq);
160931 if( !pTree->aData ){
160936 if( pTree->zTerm ){
160938 nData += sqlite3Fts3PutVarint(&pTree->aData[nData], nPrefix);
160941 nData += sqlite3Fts3PutVarint(&pTree->aData[nData], nSuffix);
160942 memcpy(&pTree->aData[nData], &zTerm[nPrefix], nSuffix);
160943 pTree->nData = nData + nSuffix;
160944 pTree->nEntry++;
160947 if( pTree->nMalloc<nTerm ){
160948 char *zNew = sqlite3_realloc(pTree->zMalloc, nTerm*2);
160952 pTree->nMalloc = nTerm*2;
160953 pTree->zMalloc = zNew;
160955 pTree->zTerm = pTree->zMalloc;
160956 memcpy(pTree->zTerm, zTerm, nTerm);
160957 pTree->nTerm = nTerm;
160959 pTree->zTerm = (char *)zTerm;
160960 pTree->nTerm = nTerm;
160971 ** now. Instead, the term is inserted into the parent of pTree. If pTree
160982 if( pTree ){
160983 SegmentNode *pParent = pTree->pParent;
160985 if( pTree->pParent==0 ){
160986 pTree->pParent = pParent;
160988 pTree->pRight = pNew;
160989 pNew->pLeftmost = pTree->pLeftmost;
160991 pNew->zMalloc = pTree->zMalloc;
160992 pNew->nMalloc = pTree->nMalloc;
160993 pTree->zMalloc = 0;
161007 SegmentNode *pTree,
161014 pTree->aData[nStart] = (char)iHeight;
161015 sqlite3Fts3PutVarint(&pTree->aData[nStart+1], iLeftChild);
161020 ** Write the buffer for the segment node pTree and all of its peers to the
161022 ** pTree and its peers to the database.
161024 ** Except, if pTree is a root node, do not write it to the database. Instead,
161034 SegmentNode *pTree, /* SegmentNode handle */
161044 if( !pTree->pParent ){
161046 int nStart = fts3TreeFinishNode(pTree, iHeight, iLeaf);
161048 *pnRoot = pTree->nData - nStart;
161049 *paRoot = &pTree->aData[nStart];
161054 for(pIter=pTree->pLeftmost; pIter && rc==SQLITE_OK; pIter=pIter->pRight){
161065 p, pTree->pParent, iHeight+1, iFree, iNextFree, piLast, paRoot, pnRoot
161074 ** Free all memory allocations associated with the tree pTree.
161076 static void fts3NodeFree(SegmentNode *pTree){
161077 if( pTree ){
161078 SegmentNode *p = pTree->pLeftmost;
161174 rc = fts3NodeAddTerm(p, &pWriter->pTree, isCopyTerm, zTerm, nPrefix+1);
161250 if( pWriter->pTree ){
161259 rc = fts3NodeWrite(p, pWriter->pTree, 1,
161283 fts3NodeFree(pWriter->pTree);