void BinarySearchTree::descending(Node *Node) { if(Node == 0) return; descending(Node->getRightNodePtr()); checkForDuplicates(Node); descending(Node->getLeftNodePtr()); }
bool dbAnyCursor::isInSelection(oid_t oid) { dbSelection::segment* curr; if (eliminateDuplicates) { return isMarked(oid); } else if (selection.nRows > BUILD_BITMAP_THRESHOLD) { checkForDuplicates(); for (curr = selection.first; curr != NULL; curr = curr->next) { for (int i = 0, n = curr->nRows; i < n; i++) { oid_t o = curr->rows[i]; bitmap[o >> 5] |= 1 << (o & 31); } } return isMarked(oid); } else {
main(){ char letters[26] = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; int number; unsigned int seed; srand(time(NULL)); /* These two loops set up a five character by five character display where there are no duplicate letters. */ for(i=0; i<outer; i++) { for(j=0; j<inner; j++) { number = rand() % 26; flag = checkForDuplicates(letters[number]); if(flag == 1){ while(flag == 1){ number = rand() % 26; flag = checkForDuplicates(letters[number]); } } checkArray[counter] = letters[number]; counter++; letterSquare[i][j] = letters[number]; printf("%c ",letters[number]); } printf("\n"); } printf("Enter a letter sequence\n"); scanf("%s", sequence); searchLetterSquareArray(sequence); return 0; }
void MutableNodeRefList::clearNulls() { XALAN_USING_STD(remove); m_nodeList.erase( remove( m_nodeList.begin(), m_nodeList.end(), NodeListVectorType::value_type(0)), m_nodeList.end()); if (m_nodeList.empty() == true) { m_order = eUnknownOrder; } assert(checkForDuplicates(getMemoryManager()) == false); }
virtual void allProductsReady() { std::vector<QoSCorrections> qosCorrectionsVector = Consumer<QoSCorrections>::getConsumables(); QoSCorrections corrections; uint64_t receivedCententionNum = 0; for (QoSCorrections product : qosCorrectionsVector) { receivedCententionNum += product.size(); for (slave::QoSCorrection correction : product) { if (checkForDuplicates(correction, corrections)) { // Filter out duplicated value. continue; } corrections.push_back(correction); } } SERENITY_LOG(INFO) << "Received " << corrections.size() << " corrections"; produce(corrections); return; }
void SettingsPropertyMapper::AddMapping(QString propertyGroup, QString propertyName, PropertyType propertyType, QWidget* editor, WidgetType editorType, QVariant defaultValue, UIValueSetter uiSetter, UIValueGetter uiGetter, ValueSetter valueSetter, ValueGetter valueGetter) { PropertyInfo propertyInfo = { propertyGroup, propertyName, propertyType, editor, editorType, (valueGetter == NULL ? ValueGetters::SettingsValueGetter : valueGetter), (valueSetter == NULL ? ValueSetters::SettingsValueSetter : valueSetter), (uiSetter == NULL ? UIPropertySetters::DefaultSetter : uiSetter), (uiGetter == NULL ? UIPropertyGetters::DefaultGetter : uiGetter), defaultValue }; checkForDuplicates(propertyGroup, propertyName); m_propertyInfos.append(propertyInfo); initilizeEditorValue(propertyInfo); subscribeToChanges(editor, editorType); }
virtual Try<Nothing> syncConsume( const std::vector<QoSCorrections> products) { QoSCorrections corrections; uint64_t receivedCententionNum = 0; for (QoSCorrections product : products) { receivedCententionNum += product.size(); for (slave::QoSCorrection correction : product) { if (checkForDuplicates(correction, corrections)) { // Filter out duplicated value. continue; } corrections.push_back(correction); } } SERENITY_LOG(INFO) << "Received " << receivedCententionNum << " corrections" << " and merged to " << corrections.size() << " corrections."; produce(corrections); return Nothing(); }
/* XXX should return rpmParseState, but RPMRC_FAIL forces int return. */ int parsePreamble(Spec spec, int initialPackage) { HE_t he = memset(alloca(sizeof(*he)), 0, sizeof(*he)); rpmParseState nextPart; int xx; char *linep; Package pkg; char NVR[BUFSIZ]; char lang[BUFSIZ]; rpmRC rc; strcpy(NVR, "(main package)"); pkg = newPackage(spec); if (spec->packages == NULL) { spec->packages = pkg; assert(initialPackage); } else if (! initialPackage) { char *name = NULL; rpmParseState flag; Package lastpkg; /* There is one option to %package: <pkg> or -n <pkg> */ flag = PART_NONE; if (parseSimplePart(spec, &name, &flag)) { rpmlog(RPMLOG_ERR, _("Bad package specification: %s\n"), spec->line); pkg = freePackages(pkg); return RPMRC_FAIL; } lastpkg = NULL; if (lookupPackage(spec, name, flag, &lastpkg) == RPMRC_OK) { pkg->next = lastpkg->next; } else { /* Add package to end of list */ for (lastpkg = spec->packages; lastpkg->next != NULL; lastpkg = lastpkg->next) {}; } assert(lastpkg != NULL); lastpkg->next = pkg; /* Construct the package */ if (flag == PART_SUBNAME) { he->tag = RPMTAG_NAME; xx = headerGet(spec->packages->header, he, 0); sprintf(NVR, "%s-%s", he->p.str, name); he->p.ptr = _free(he->p.ptr); } else strcpy(NVR, name); name = _free(name); he->tag = RPMTAG_NAME; he->t = RPM_STRING_TYPE; he->p.str = NVR; he->c = 1; xx = headerPut(pkg->header, he, 0); } if ((rc = readLine(spec, STRIP_TRAILINGSPACE | STRIP_COMMENTS)) > 0) { nextPart = PART_NONE; } else { if (rc) return rc; while ((nextPart = isPart(spec)) == PART_NONE) { const char * macro = NULL; rpmTag tag = 0; /* Skip blank lines */ linep = spec->line; SKIPSPACE(linep); if (*linep != '\0') { if (findPreambleTag(spec, &tag, ¯o, lang)) { rpmlog(RPMLOG_ERR, _("line %d: Unknown tag: %s\n"), spec->lineNum, spec->line); return RPMRC_FAIL; } if (handlePreambleTag(spec, pkg, tag, macro, lang)) return RPMRC_FAIL; if (spec->BANames && !spec->recursing && spec->toplevel) return PART_BUILDARCHITECTURES; } if ((rc = readLine(spec, STRIP_TRAILINGSPACE | STRIP_COMMENTS)) > 0) { nextPart = PART_NONE; break; } if (rc) return rc; } } /* Do some final processing on the header */ /* * Expand buildroot one more time to get %{version} and the like * from the main package. */ if (initialPackage) { const char *s = rpmExpand("%{?buildroot}", NULL); if (s && *s) (void) addMacro(NULL, "buildroot", NULL, s, -1); s = _free(s); } /* XXX Skip valid arch check if not building binary package */ if (!spec->anyarch && checkForValidArchitectures(spec)) return RPMRC_FAIL; if (pkg == spec->packages) fillOutMainPackage(pkg->header); if (checkForDuplicates(pkg->header, NVR) != RPMRC_OK) return RPMRC_FAIL; if (pkg != spec->packages) headerCopyTags(spec->packages->header, pkg->header, (void *)copyTagsDuringParse); #ifdef RPM_VENDOR_PLD /* rpm-epoch0 */ /* Add Epoch: 0 to package header if it was not set by spec */ he->tag = RPMTAG_NAME; if (headerGet(spec->packages->header, he, 0) == 0) { rpmuint32_t num = 0; he->tag = RPMTAG_EPOCH; he->t = RPM_UINT32_TYPE; he->p.ui32p = # he->c = 1; xx = headerPut(pkg->header, he, 0); /* also declare %{epoch} to be same */ addMacro(spec->macros, "epoch", NULL, "0", RMIL_SPEC); } #endif /* RPM_VENDOR_PLD rpm-epoch0 */ if (checkForRequired(pkg->header, NVR) != RPMRC_OK) return RPMRC_FAIL; return nextPart; }
int parsePreamble(rpmSpec spec, int initialPackage) { int nextPart = PART_ERROR; int res = PART_ERROR; /* assume failure */ int rc; char *name, *linep; int flag = 0; Package pkg; char *NVR = NULL; char lang[BUFSIZ]; if (! initialPackage) { /* There is one option to %package: <pkg> or -n <pkg> */ if (parseSimplePart(spec->line, &name, &flag)) { rpmlog(RPMLOG_ERR, _("Bad package specification: %s\n"), spec->line); goto exit; } if (rpmCharCheck(spec, name, WHITELIST_NAME)) goto exit; if (!lookupPackage(spec, name, flag, NULL)) { free(name); goto exit; } /* Construct the package */ if (flag == PART_SUBNAME) { rasprintf(&NVR, "%s-%s", headerGetString(spec->packages->header, RPMTAG_NAME), name); } else NVR = xstrdup(name); free(name); pkg = newPackage(NVR, spec->pool, &spec->packages); headerPutString(pkg->header, RPMTAG_NAME, NVR); } else { NVR = xstrdup("(main package)"); pkg = newPackage(NULL, spec->pool, &spec->packages); spec->sourcePackage = newPackage(NULL, spec->pool, NULL); } if ((rc = readLine(spec, STRIP_TRAILINGSPACE | STRIP_COMMENTS)) > 0) { nextPart = PART_NONE; } else if (rc < 0) { goto exit; } else { while (! (nextPart = isPart(spec->line))) { const char * macro; rpmTagVal tag; /* Skip blank lines */ linep = spec->line; SKIPSPACE(linep); if (*linep != '\0') { if (findPreambleTag(spec, &tag, ¯o, lang)) { if (spec->lineNum == 1 && (unsigned char)(spec->line[0]) == 0xed && (unsigned char)(spec->line[1]) == 0xab && (unsigned char)(spec->line[2]) == 0xee && (unsigned char)(spec->line[3]) == 0xdb) { rpmlog(RPMLOG_ERR, _("Binary rpm package found. Expected spec file!\n")); goto exit; } rpmlog(RPMLOG_ERR, _("line %d: Unknown tag: %s\n"), spec->lineNum, spec->line); goto exit; } if (handlePreambleTag(spec, pkg, tag, macro, lang)) { goto exit; } if (spec->BANames && !spec->recursing) { res = PART_BUILDARCHITECTURES; goto exit; } } if ((rc = readLine(spec, STRIP_TRAILINGSPACE | STRIP_COMMENTS)) > 0) { nextPart = PART_NONE; break; } if (rc) { goto exit; } } } /* * Expand buildroot one more time to get %{version} and the like * from the main package, validate sanity. The spec->buildRoot could * still contain unexpanded macros but it cannot be empty or '/', and it * can't be messed with by anything spec does beyond this point. */ if (initialPackage) { char *buildRoot = rpmGetPath(spec->buildRoot, NULL); if (*buildRoot == '\0') { rpmlog(RPMLOG_ERR, _("%%{buildroot} couldn't be empty\n")); goto exit; } if (rstreq(buildRoot, "/")) { rpmlog(RPMLOG_ERR, _("%%{buildroot} can not be \"/\"\n")); goto exit; } free(spec->buildRoot); spec->buildRoot = buildRoot; rpmPushMacro(spec->macros, "buildroot", NULL, spec->buildRoot, RMIL_SPEC); } /* XXX Skip valid arch check if not building binary package */ if (!(spec->flags & RPMSPEC_ANYARCH) && checkForValidArchitectures(spec)) { goto exit; } /* It is the main package */ if (pkg == spec->packages) { fillOutMainPackage(pkg->header); /* Define group tag to something when group is undefined in main package*/ if (!headerIsEntry(pkg->header, RPMTAG_GROUP)) { headerPutString(pkg->header, RPMTAG_GROUP, "Unspecified"); } } if (checkForDuplicates(pkg->header, NVR)) { goto exit; } if (pkg != spec->packages) { headerCopyTags(spec->packages->header, pkg->header, (rpmTagVal *)copyTagsDuringParse); } if (checkForRequired(pkg->header, NVR)) { goto exit; } /* if we get down here nextPart has been set to non-error */ res = nextPart; exit: free(NVR); return res; }