drools-eclipse/org.drools.eclipse/src/main/java/org/drools/eclipse/dsl/editor/completion/DSLRuleCompletionProcessor.java
protected List<String> getProposals(DSLAdapter adapter, String obj, String last, boolean firstLine) {
        if (last.length() == 0) {
            last = " ";
        }
        return adapter.getDSLTree().getChildrenList(obj, last, true, firstLine);
    }
protected List<String> getProposals(DSLAdapter adapter, String obj, String last, boolean firstLine) {
        if (last.length() == 0) {
            last = " ";
        }
        return adapter.getDSLTree().getChildrenList(obj, last, true, firstLine);
    }
The DSLTree is configurable. It can either return just the child of the
last token found, or it can traverse the tree and generate all the
combinations beneath the last matching node. TODO I don't know how to add
configuration to the editor, so it needs to be hooked up to the
configuration for the editor later.

@param last
@return