diff options
Diffstat (limited to 'javaparser-symbol-solver-testing/src/test/test_sourcecode/javaparser_new_src/javaparser-core/com/github/javaparser/ast/nodeTypes/NodeWithStatements.java')
-rw-r--r-- | javaparser-symbol-solver-testing/src/test/test_sourcecode/javaparser_new_src/javaparser-core/com/github/javaparser/ast/nodeTypes/NodeWithStatements.java | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/javaparser-symbol-solver-testing/src/test/test_sourcecode/javaparser_new_src/javaparser-core/com/github/javaparser/ast/nodeTypes/NodeWithStatements.java b/javaparser-symbol-solver-testing/src/test/test_sourcecode/javaparser_new_src/javaparser-core/com/github/javaparser/ast/nodeTypes/NodeWithStatements.java new file mode 100644 index 000000000..b6c895efb --- /dev/null +++ b/javaparser-symbol-solver-testing/src/test/test_sourcecode/javaparser_new_src/javaparser-core/com/github/javaparser/ast/nodeTypes/NodeWithStatements.java @@ -0,0 +1,46 @@ +package com.github.javaparser.ast.nodeTypes; + +import java.util.List; + +import com.github.javaparser.ast.Node; +import com.github.javaparser.ast.expr.Expression; +import com.github.javaparser.ast.expr.NameExpr; +import com.github.javaparser.ast.stmt.ExpressionStmt; +import com.github.javaparser.ast.stmt.Statement; + +public interface NodeWithStatements<T> { + public List<Statement> getStmts(); + + public T setStmts(final List<Statement> stmts); + + @SuppressWarnings("unchecked") + public default T addStatement(Statement statement) { + getStmts().add(statement); + statement.setParentNode((Node) this); + return (T) this; + } + + @SuppressWarnings("unchecked") + public default T addStatement(int index, final Statement statement) { + getStmts().add(index, statement); + statement.setParentNode((Node) this); + return (T) this; + } + + public default T addStatement(Expression expr) { + ExpressionStmt statement = new ExpressionStmt(expr); + expr.setParentNode(statement); + return addStatement(statement); + } + + public default T addStatement(String statement) { + return addStatement(new NameExpr(statement)); + } + + public default T addStatement(int index, final Expression expr) { + Statement stmt = new ExpressionStmt(expr); + expr.setParentNode(stmt); + return addStatement(index, stmt); + } + +} |