本文整理汇总了C++中FullPos类的典型用法代码示例。如果您正苦于以下问题:C++ FullPos类的具体用法?C++ FullPos怎么用?C++ FullPos使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了FullPos类的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: assert
void ArrayData::newFullPos(FullPos &fp) {
assert(fp.getContainer() == NULL);
fp.setContainer(this);
fp.setNext(strongIterators());
setStrongIterators(&fp);
getFullPos(fp);
}
示例2: validFullPos
bool NameValueTableWrapper::validFullPos(const FullPos & fp) const {
assert(fp.getContainer() == (ArrayData*)this);
if (fp.getResetFlag()) return false;
if (fp.m_pos == ArrayData::invalid_index) return false;
NameValueTable::Iterator iter(m_tab, fp.m_pos);
return (iter.valid());
}
示例3: newFullPos
void ArrayData::newFullPos(FullPos &fp) {
assert(!fp.getContainer());
fp.setContainer(this);
fp.setNext(strongIterators());
setStrongIterators(&fp);
fp.m_pos = m_pos;
}
示例4: iter
bool
NameValueTableWrapper::ValidFullPos(const ArrayData* ad, const FullPos & fp) {
assert(fp.getContainer() == ad);
auto a = asNVTW(ad);
if (fp.getResetFlag()) return false;
if (fp.m_pos == invalid_index) return false;
NameValueTable::Iterator iter(a->m_tab, fp.m_pos);
return iter.valid();
}
示例5: advanceFullPos
bool NameValueTableWrapper::advanceFullPos(FullPos& fp) {
bool reset = fp.getResetFlag();
NameValueTable::Iterator iter = reset ?
NameValueTable::Iterator(m_tab) :
NameValueTable::Iterator(m_tab, fp.m_pos);
if (reset) {
fp.setResetFlag(false);
} else {
if (!iter.valid()) {
return false;
}
iter.next();
}
fp.m_pos = iter.toInteger();
if (!iter.valid()) return false;
// To conform to PHP behavior, we need to set the internal
// cursor to point to the next element.
iter.next();
m_pos = iter.toInteger();
return true;
}
示例6: validFullPos
bool SharedMap::validFullPos(const FullPos& fp) const {
assert(fp.getContainer() == (ArrayData*)this);
return false;
}
示例7: ValidFullPos
bool APCLocalArray::ValidFullPos(const ArrayData* ad, const FullPos& fp) {
assert(fp.getContainer() == ad);
return false;
}
示例8: ValidFullPos
bool SharedMap::ValidFullPos(const ArrayData* ad, const FullPos& fp) {
assert(fp.getContainer() == ad);
return false;
}
示例9: setFullPos
bool ArrayData::setFullPos(const FullPos &fp) {
assert(fp.getContainer() == (ArrayData*)this);
return false;
}
示例10: getFullPos
void ArrayData::getFullPos(FullPos &fp) {
assert(fp.getContainer() == (ArrayData*)this);
fp.m_pos = ArrayData::invalid_index;
}