| 130 | } |
| 131 | |
| 132 | void BfSource::Close() |
| 133 | { |
| 134 | // if (mAlloc->mSource == NULL) |
| 135 | // { |
| 136 | // BF_ASSERT(mErrorRootNode == NULL); |
| 137 | // BF_ASSERT(mPendingErrorNodes.size() == 0); |
| 138 | // return; |
| 139 | // } |
| 140 | mAstScratch = mAlloc->AllocBytes(SCRATCH_SIZE, sizeof(void*)); |
| 141 | |
| 142 | FinishSideNodes(); |
| 143 | |
| 144 | if (!mPendingErrorNodes.IsEmpty()) |
| 145 | { |
| 146 | mErrorRootNode->Init(mPendingErrorNodes, mAlloc); |
| 147 | qsort(mErrorRootNode->mChildArr.mVals, mErrorRootNode->mChildArr.mSize, sizeof(ASTREF(BfAstNode*)), NodeCompare); |
| 148 | mPendingErrorNodes.clear(); |
| 149 | } |
| 150 | |
| 151 | mIsClosed = true; |
| 152 | } |
no test coverage detected