void SecurityManager::updateMemberInDatabase(const Member &m, bool add) { bool update = !add; /* Can't write in a thread manner, because can't update memory in a threaded manner and update filepos in a threaded * manner. Could with mutexes */ #if 0 thread->pushMember(m, update); #else Member m2 = m; insertMember(&m2, update); #endif }
void SecurityManager::updateMemberInDatabase(const Member &m, bool add) { bool update = !add; if (isSql()) { thread->pushMember(m, update); } else { /* Can't write in a threaded manner, because can't update memory in a threaded manner and update filepos in a threaded * manner. Could with mutexes */ Member m2 = m; insertMember(0, &m2, update); } }
void Tree::insertGeneratedConcreteType( ClassDefinition* generatedClass, const TypeList& concreteTypeParameters) { if (auto innerClass = findInnerClass(concreteTypeParameters)) { auto outerClass = innerClass->getEnclosingClass(); // Insert the generated class after the inner class. outerClass->insertMember(innerClass, generatedClass, true); runPassesOnGeneratedClass(generatedClass); } else { // Insert the generated class in the global name bindings. globalNameBindings.insertClass(generatedClass->getName(), generatedClass); runPassesOnGeneratedClass(generatedClass); // Insert the definition in front of the definition currently being // traversed. globalDefinitions.insert(definitionIter, generatedClass); } }