QVariant LoadingModel::typedValue(const QXmlNodeModelIndex &ni) const
{
    const Node *const internal = toInternal(ni);

    Q_ASSERT(internal->kind == QXmlNodeModelIndex::Attribute
             || internal->kind == QXmlNodeModelIndex::Element);

    return internal->value;
}
Exemple #2
0
QVariant LoadingModel::typedValue(const QXmlNodeModelIndex &ni) const
{
    const Node *const internal = toInternal(ni);

    if (internal->kind != QXmlNodeModelIndex::Attribute
        && internal->kind != QXmlNodeModelIndex::Element) {
        qWarning("%s: node must be an attribute or element", Q_FUNC_INFO);
        return QVariant();
    }

    return internal->value;
}
Exemple #3
0
void DynamicRewriter::addRewrite(Node a, Node b)
{
  Trace("dyn-rewrite") << "Dyn-Rewriter : " << a << " == " << b << std::endl;
  if (a == b)
  {
    Trace("dyn-rewrite") << "...equal." << std::endl;
    return;
  }

  // add to the equality engine
  Node ai = toInternal(a);
  Node bi = toInternal(b);
  Trace("dyn-rewrite-debug") << "Internal : " << ai << " " << bi << std::endl;

  Trace("dyn-rewrite-debug") << "assert eq..." << std::endl;
  Node eq = ai.eqNode(bi);
  d_rewrites.push_back(eq);
  d_equalityEngine.assertEquality(eq, true, eq);
  Assert(d_equalityEngine.consistent());
  Trace("dyn-rewrite-debug") << "Finished" << std::endl;
}
QString LoadingModel::stringValue(const QXmlNodeModelIndex &ni) const
{
    const Node *const internal = toInternal(ni);

    switch(internal->kind)
    {
        case QXmlNodeModelIndex::Text:
        /* Fallthrough. */
        case QXmlNodeModelIndex::ProcessingInstruction:
        /* Fallthrough. */
        case QXmlNodeModelIndex::Comment:
        /* Fallthrough. */
        case QXmlNodeModelIndex::Attribute:
            return internal->value;
        default:
            return QString();
    }
}
Exemple #5
0
Node DynamicRewriter::toInternal(Node a)
{
  std::map<Node, Node>::iterator it = d_term_to_internal.find(a);
  if (it != d_term_to_internal.end())
  {
    return it->second;
  }
  Node ret = a;

  if (!a.isVar())
  {
    std::vector<Node> children;
    if (a.hasOperator())
    {
      Node op = a.getOperator();
      if (a.getKind() != APPLY_UF)
      {
        op = d_ois_trie[op].getSymbol(a);
      }
      children.push_back(op);
    }
    for (const Node& ca : a)
    {
      Node cai = toInternal(ca);
      children.push_back(cai);
    }
    if (!children.empty())
    {
      if (children.size() == 1)
      {
        ret = children[0];
      }
      else
      {
        ret = NodeManager::currentNM()->mkNode(APPLY_UF, children);
      }
    }
  }
  d_term_to_internal[a] = ret;
  return ret;
}
QXmlNodeModelIndex LoadingModel::nextFromSimpleAxis(QAbstractXmlNodeModel::SimpleAxis axis,
                                                    const QXmlNodeModelIndex &ni) const
{
    const Node *const internal = toInternal(ni);

    /* Note that a QXmlNodeModelIndex containing a null pointer is not a null node. */
    switch(axis)
    {
        case Parent:
            return internal->parent ? createIndex(internal->parent) : QXmlNodeModelIndex();
        case FirstChild:
            return internal->firstChild ? createIndex(internal->firstChild) : QXmlNodeModelIndex();
        case PreviousSibling:
            return internal->precedingSibling ? createIndex(internal->precedingSibling) : QXmlNodeModelIndex();
        case NextSibling:
            return internal->followingSibling ? createIndex(internal->followingSibling) : QXmlNodeModelIndex();
    }

    Q_ASSERT(false);
    return QXmlNodeModelIndex();
}
Exemple #7
0
QXmlNodeModelIndex LoadingModel::nextFromSimpleAxis(QAbstractXmlNodeModel::SimpleAxis axis,
                                                    const QXmlNodeModelIndex &ni) const
{
    const Node *const internal = toInternal(ni);

    /* Note that a QXmlNodeModelIndex containing a null pointer is not a null node. */
    switch(axis)
    {
        case Parent:
            return internal->parent ? createIndex(internal->parent) : QXmlNodeModelIndex();
        case FirstChild:
            return internal->firstChild ? createIndex(internal->firstChild) : QXmlNodeModelIndex();
        case PreviousSibling:
            return internal->precedingSibling ? createIndex(internal->precedingSibling) : QXmlNodeModelIndex();
        case NextSibling:
            return internal->followingSibling ? createIndex(internal->followingSibling) : QXmlNodeModelIndex();
        default:
            qWarning("%s: unknown axis enum value %d", Q_FUNC_INFO, static_cast<int>(axis));
            return QXmlNodeModelIndex();
    }
}
// Converts an absolute index to an array index in [0..table_.size() - 1]
uint32_t QPACKHeaderTable::absoluteToInternal(
  uint32_t absoluteIndex) const {
  return toInternal(absoluteToRelative(absoluteIndex), 0);
}
const HPACKHeader& QPACKHeaderTable::getHeader(uint32_t index,
                                               uint32_t base) const {
  CHECK(isValid(index, base));
  return table_[toInternal(index, base)];
}
Exemple #10
0
void Image::setPixel(int x, int y, int red, int green, int blue)
{
	if(x >= 0 && x < m_width && y >= 0 && y < m_height && red >= 0 && red < 256 && green>= 0 && green < 256 && blue >= 0 && blue < 256)
		m_data[x][y] = toInternal(red, green, blue);
}
QXmlNodeModelIndex::NodeKind LoadingModel::kind(const QXmlNodeModelIndex &ni) const
{
    Q_ASSERT(!ni.isNull());
    return toInternal(ni)->kind;
}
QXmlName LoadingModel::name(const QXmlNodeModelIndex &ni) const
{
    return toInternal(ni)->name;
}
void UncheckedModelImpl::setMap(Map * emap) {
  assert(mMap == nullptr); // Take this out if we ever support switching maps
  auto map = toInternal(emap);
  mMap = map;
}
void UncheckedModelImpl::moveUnit(Unit * eunit, Coord location) {
  auto unit = toInternal(eunit);
  unit->setLocation(location);
}
void UncheckedModelImpl::addUnit(Unit * eunit, Coord location) {
  auto unit = toInternal(eunit);
  unit->setLocation(location);
  mUnits.push_back(unit);
}
Exemple #16
0
QXmlNodeModelIndex::NodeKind LoadingModel::kind(const QXmlNodeModelIndex &ni) const
{
    if (ni.isNull())
        qFatal("%s: node model index should not be null", Q_FUNC_INFO);
    return toInternal(ni)->kind;
}