if (node != null && node.sourceStart() <= position && position <= node.sourceEnd()) {
// this is empty module case
if (node instanceof ModuleDeclaration) {
ModuleDeclaration unit = (ModuleDeclaration) node;
List exprs = new ArrayList();
exprs.add(new SimpleReference(position, position, ""));
RutaEmptyCompleteStatement statement = new RutaEmptyCompleteStatement(exprs);
unit.addStatement(statement);
this.parseBlockStatements(statement, unit, position);
} else if (node instanceof MethodDeclaration) {
// empty keyword like completion.
MethodDeclaration method = (MethodDeclaration) node;
List exprs = new ArrayList();
exprs.add(new SimpleReference(position, position, ""));
RutaEmptyCompleteStatement statement = new RutaEmptyCompleteStatement(exprs);
method.getStatements().add(statement);
this.parseBlockStatements(statement, method, position);
} else if (node instanceof TypeDeclaration) {
// empty keyword like completion.
TypeDeclaration type = (TypeDeclaration) node;
List exprs = new ArrayList();
exprs.add(new SimpleReference(position, position, ""));
RutaEmptyCompleteStatement statement = new RutaEmptyCompleteStatement(exprs);
type.getStatements().add(statement);
// this.assistNodeParent = node;
this.parseBlockStatements(statement, type, position);
// } else if (node instanceof RutaExecuteExpression) {