kendal.api.AstNodeBuilder Maven / Gradle / Ivy
package kendal.api;
import java.util.List;
import com.sun.tools.javac.tree.JCTree.JCAnnotation;
import com.sun.tools.javac.tree.JCTree.JCBlock;
import com.sun.tools.javac.tree.JCTree.JCExpression;
import com.sun.tools.javac.tree.JCTree.JCExpressionStatement;
import com.sun.tools.javac.tree.JCTree.JCFieldAccess;
import com.sun.tools.javac.tree.JCTree.JCIdent;
import com.sun.tools.javac.tree.JCTree.JCMethodDecl;
import com.sun.tools.javac.tree.JCTree.JCModifiers;
import com.sun.tools.javac.tree.JCTree.JCVariableDecl;
import com.sun.tools.javac.util.Name;
import kendal.api.exceptions.ImproperNodeTypeException;
import kendal.model.Node;
public interface AstNodeBuilder {
Node buildVariableDecl(List modifiers, JCExpression type, Name Name, Node source);
Node buildMethodDecl(JCModifiers modifiers, Name name, JCExpression resType,
com.sun.tools.javac.util.List params, JCBlock body);
Node buildObjectReference(Name fieldName);
Node buildFieldAccess(Node objectRef, Name fieldName) throws ImproperNodeTypeException;
// ExpressionStatements:
Node
buildAssignmentStatement(Node lhs, Node rhs) throws ImproperNodeTypeException;
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy