bool VLPrefixSet::GetSmallestPrefix(nsDependentCSubstring& aOutString) { PrefixString* pick = nullptr; for (auto iter = mMap.ConstIter(); !iter.Done(); iter.Next()) { PrefixString* str = iter.Data(); if (!str->get()) { continue; } if (aOutString.IsEmpty()) { aOutString.Rebind(str->get(), iter.Key()); pick = str; continue; } nsDependentCSubstring cur(str->get(), iter.Key()); if (cur < aOutString) { aOutString.Rebind(str->get(), iter.Key()); pick = str; } } if (pick) { pick->next(); } return pick != nullptr; }
void Tokenizer::Claim(nsDependentCSubstring& aResult, ClaimInclusion aInclusion) { nsACString::const_char_iterator close = aInclusion == EXCLUDE_LAST ? mRollback : mCursor; aResult.Rebind(mRecord, close - mRecord); }
bool Tokenizer::ReadWord(nsDependentCSubstring& aValue) { Token t; if (!Check(TOKEN_WORD, t)) { return false; } aValue.Rebind(t.AsString().BeginReading(), t.AsString().Length()); return true; }
NS_IMETHODIMP nsStringInputStream::ShareData(const char* aData, int32_t aDataLen) { if (NS_WARN_IF(!aData)) { return NS_ERROR_INVALID_ARG; } if (aDataLen < 0) { aDataLen = strlen(aData); } mData.Rebind(aData, aDataLen); mOffset = 0; return NS_OK; }