Example usage for org.apache.commons.collections.primitives IntList size

List of usage examples for org.apache.commons.collections.primitives IntList size

Introduction

In this page you can find the example usage for org.apache.commons.collections.primitives IntList size.

Prototype

int size();

Source Link

Document

Returns the number of elements I contain.

Usage

From source file:de.walware.statet.r.internal.core.rhelp.index.REnvIndexReader.java

public List<IRHelpPage> getPagesForTopic(final String topic, final Map<String, IRPkgHelp> packageMap) {
    check();/*from   w w w.j  a  va2 s  .  c  om*/
    try {
        final BooleanQuery q = new BooleanQuery(true);
        q.add(DOCTYPE_PAGE_QUERY, Occur.MUST);
        q.add(new TermQuery(new Term(ALIAS_FIELD_NAME, topic)), Occur.MUST);
        final AllDocCollector collector = new AllDocCollector();
        this.indexSearcher.search(q, collector);
        final IntList docs = collector.getDocs();
        final int count = docs.size();
        final ArrayList<IRHelpPage> pages = new ArrayList<>(count);
        for (int i = 0; i < count; i++) {
            final Document document = this.indexSearcher.doc(docs.get(i), LOAD_ID_SELECTOR);
            final IRPkgHelp pkgHelp = packageMap.get(document.get(PACKAGE_FIELD_NAME));
            final String name = document.get(PAGE_FIELD_NAME);
            if (name == null) {
                continue;
            }
            if (pkgHelp != null) {
                final IRHelpPage page = pkgHelp.getHelpPage(name);
                if (page != null) {
                    pages.add(page);
                    continue;
                }
            }
            RCorePlugin.log(new Status(IStatus.WARNING, RCore.PLUGIN_ID,
                    "Unexpected search result: page '" + document.get(PACKAGE_FIELD_NAME) + "::"
                            + document.get(PAGE_FIELD_NAME) + "' object not found; in search: "
                            + getPagesForTopicDescription(topic) + "."));
        }
        return pages;
    } catch (final Exception e) {
        RCorePlugin.log(new Status(IStatus.ERROR, RCore.PLUGIN_ID, -1,
                "An error occurred in search: " + getPagesForTopicDescription(topic), e));
        throw new RuntimeException("R help index search error.");
    }
}

From source file:de.walware.docmlet.tex.internal.ui.editors.LtxCommandCompletionProposal.java

private LinkedModeUI createLinkedMode(final ApplyData data, final int offset, final IntList positions)
        throws BadLocationException {
    final AssistInvocationContext context = getInvocationContext();

    final LinkedModeModel model = new LinkedModeModel();
    int pos = 0;//from   w w  w.j  ava2  s.  co m

    final List<LinkedPosition> linked = new ArrayList<>(positions.size());
    for (int i = 0; i < positions.size() - 1; i++) {
        final LinkedPositionGroup group = new LinkedPositionGroup();
        final LinkedPosition position = (positions.get(i) % 2 == 1)
                ? TexBracketLevel.createPosition('{', data.getDocument(), offset + positions.get(i), 0, pos++)
                : new LinkedPosition(data.getDocument(), offset + positions.get(i), 0, pos++);
        group.addPosition(position);
        linked.add(position);
        model.addGroup(group);
    }

    model.forceInstall();

    final TexBracketLevel level = new TexBracketLevel(data.getDocument(),
            context.getEditor().getPartitioning().getPartitioning(), linked, TexBracketLevel.AUTODELETE);

    /* create UI */
    final LinkedModeUI ui = new LinkedModeUI(model, data.getViewer());
    ui.setCyclingMode(LinkedModeUI.CYCLE_WHEN_NO_PARENT);
    ui.setExitPosition(data.getViewer(), offset + positions.get(positions.size() - 1), 0, pos);
    ui.setSimpleMode(true);
    ui.setExitPolicy(level);
    return ui;
}

From source file:de.walware.statet.r.core.rsource.ast.RAst.java

public static int[] computeRExpressionIndex(RAstNode node, final RAstNode baseNode) {
    final IntList topdown = new ArrayIntList();
    while (node != baseNode) {
        final RAstNode parent = node.getRParent();
        switch (parent.getNodeType()) {

        // list//from   w ww  .ja v  a2 s .c o m
        case SOURCELINES:
        case F_DEF_ARGS:
            // [[1]] = name
        case F_CALL:
            topdown.add(parent.getChildIndex(node) + 1);
            node = parent;
            continue;

        // [[1]] = operator
        case BLOCK:
        case GROUP:
        case SUB_INDEXED_S:
        case SUB_INDEXED_D:
        case NS_GET:
        case NS_GET_INT:
        case SUB_NAMED_PART:
        case SUB_NAMED_SLOT:
        case POWER:
        case SIGN:
        case SEQ:
        case SPECIAL:
        case MULT:
        case ADD:
        case RELATIONAL:
        case NOT:
        case AND:
        case OR:
        case MODEL:
        case A_RIGHT:
        case A_EQUALS:
        case A_LEFT:
        case HELP:
        case C_IF:
        case C_FOR:
        case C_WHILE:
        case C_REPEAT:
        case F_DEF:
            topdown.add(parent.getChildIndex(node) + 2);
            node = parent;
            continue;

        // part of parent element
        case SUB_INDEXED_ARGS:
            if (parent == baseNode) {
                break;
            }
            topdown.add(parent.getChildIndex(node) + 3);
            node = parent.getRParent();
            break;
        case C_IN:
        case F_CALL_ARGS:
            if (parent == baseNode) {
                break;
            }
            topdown.add(parent.getChildIndex(node) + 2);
            node = parent.getRParent();
            break;

        case SUB_INDEXED_ARG:
        case F_DEF_ARG:
        case F_CALL_ARG:
            node = parent;
            continue;

        case ERROR:
        case ERROR_TERM:
        case DUMMY:
            return null;

        default:
            throw new IllegalStateException("Unexpected parent");
        }
    }
    final int l = topdown.size();
    final int[] path = new int[l];
    for (int i = 0; i < l;) {
        path[i] = topdown.get(l - ++i);
    }
    return path;
}

From source file:de.walware.docmlet.tex.internal.ui.editors.LtxCommandCompletionProposal.java

@Override
protected void doApply(final char trigger, final int stateMask, final int caretOffset,
        final int replacementOffset, final int replacementLength) throws BadLocationException {
    final ApplyData data = getApplyData();
    final IDocument document = data.getDocument();

    final StringBuilder replacement = new StringBuilder(fCommand.getControlWord());
    if ((stateMask & 0x1) == 0x1) {
        replacement.insert(0, '\\');
    }//from   w  w w  . j a v a  2s . c  om
    int cursor = replacement.length();
    int mode = 0;
    IntList positions = null;
    if (fCommand == IEnvDefinitions.VERBATIM_verb_COMMAND) {
        mode = 201;
    } else if ((fCommand.getType() & TexCommand.MASK_MAIN) != TexCommand.ENV) {
        final List<Argument> args = fCommand.getArguments();
        if (args != null && !args.isEmpty()) {
            final boolean isFirstOptional = args.get(0).isOptional();
            int idxFirstRequired = -1;
            for (int i = (isFirstOptional) ? 1 : 0; i < args.size(); i++) {
                final Argument arg = args.get(i);
                if (arg.isRequired()) {
                    idxFirstRequired = i;
                    break;
                }
            }
            if (idxFirstRequired >= 0) {
                if (replacementOffset + replacementLength < document.getLength() - 1
                        && (document.getChar(replacementOffset + replacementLength) == '{' || (isFirstOptional
                                && document.getChar(replacementOffset + replacementLength) == '['))) {
                    cursor++;
                    mode = 10;
                } else if (!isFollowedByOpeningBracket(data, replacementOffset + replacementLength,
                        isFirstOptional)) {
                    replacement.append('{');
                    cursor++;
                    mode = 11;
                }
                if (mode >= 10) {
                    if (mode == 11 && !isClosedBracket(data, replacementOffset,
                            replacementOffset + replacementLength)) {
                        replacement.append('}');

                        positions = new ArrayIntList();
                        mode = 0;
                        if (isFirstOptional) {
                            positions.add(mode);
                        }
                        mode++;
                        positions.add(mode++);
                        for (int i = idxFirstRequired + 1; i < args.size(); i++) {
                            if (args.get(i).isRequired()) {
                                replacement.append("{}");
                                mode++;
                                positions.add(mode++);
                            } else if (positions.get(positions.size() - 1) != mode) {
                                positions.add(mode);
                            }
                        }
                        if (positions.get(positions.size() - 1) != mode) {
                            positions.add(mode);
                        }
                        mode = 110 + 1;
                        // add multiple arguments
                    }
                }
            }
        }
    }
    document.replace(replacementOffset, replacementLength, replacement.toString());
    setCursorPosition(replacementOffset + cursor);
    if (mode > 100 && mode < 200) {
        createLinkedMode(data, replacementOffset + cursor - (mode - 110), positions).enter();
    } else if (mode > 200 && mode < 300) {
        createLinkedVerbMode(data, replacementOffset + cursor);
    }
    if ((fCommand.getType() & TexCommand.MASK_MAIN) == TexCommand.GENERICENV) {
        reinvokeAssist(data.getViewer());
    }
}