All Downloads are FREE. Search and download functionalities are using the official Maven repository.

kendal.api.AstNodeBuilder Maven / Gradle / Ivy

There is a newer version: 0.6
Show newest version
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