Exemplo n.º 1
0
void CSteppedConjunctionOptimizer::addJoin(ISteppedJoin & _join)
{
    unsigned thisEqualFields = _join.getNumEqualFields();
    assertex(thisEqualFields);
    if (numEqualFields > thisEqualFields)
        numEqualFields = thisEqualFields;
    joins.append(OLINK(_join));
}
Exemplo n.º 2
0
void ScopeConsistencyChecker::checkConsistent(IHqlExpression * root, const HqlExprArray & _activeTables)
{
    ForEachItemIn(i, _activeTables)
        activeTables.append(OLINK(_activeTables.item(i)));
    if (root->isDataset())
        pushScope();
    analyse(root, 0);
    if (root->isDataset())
        popScope();
}
Exemplo n.º 3
0
void CSteppedConjunctionOptimizer::addInput(CSteppedInputLookahead & _input)
{
    inputs.append(OLINK(_input));
    if (_input.hasPostFilter())
        inputHasPostfilter = true;
    if (_input.hasPriority())
        numPriorityInputs++;
    if (_input.readsRowsRemotely())
        inputIsDistributed = true;
    numInputs++;
}
Exemplo n.º 4
0
bool processArgvFilename(IFileArray & filenames, const char * filename)
{
    if (filename[0] == '@')
        return processArgvFilenamesFromFile(filenames, filename+1);

    if (containsFileWildcard(filename))
    {
        StringBuffer dirPath, dirWildcard;
        splitFilename(filename, &dirPath, &dirPath, &dirWildcard, &dirWildcard);
        Owned<IDirectoryIterator> iter = createDirectoryIterator(dirPath.str(), dirWildcard.str());
        ForEach(*iter)
        {
            IFile & cur = iter->query();
            if (cur.isFile() == foundYes)
                filenames.append(OLINK(cur));
        }
    }
    else
    {
Exemplo n.º 5
0
void CSteppedConjunctionOptimizer::addPseudoInput(CSteppedInputLookahead & _input)
{
    pseudoInputs.append(OLINK(_input));
}
Exemplo n.º 6
0
void WebServicesExtractor::getResults(StringPairArray & targetResults)
{
    ForEachItemIn(i, results)
        targetResults.append(OLINK(results.item(i)));
}
Exemplo n.º 7
0
//construction
    virtual void addLink(RegexPattern * link)               { next.append(OLINK(*link)); }