Add Modifiers information (public, private, ...)

This commit is contained in:
Andreas Dangel
2016-04-02 12:06:37 +02:00
parent 46c24f3a85
commit 9a5b2a7dbd
2 changed files with 48 additions and 24 deletions

View File

@ -5,7 +5,7 @@ package net.sourceforge.pmd.lang.apex.ast;
import apex.jorje.semantic.ast.modifier.ModifierNode;
public class ASTModifierNode extends AbstractApexNode<ModifierNode> {
public class ASTModifierNode extends AbstractApexNode<ModifierNode> implements AccessNode {
public ASTModifierNode(ModifierNode modifierNode) {
super(modifierNode);
@ -19,4 +19,44 @@ public class ASTModifierNode extends AbstractApexNode<ModifierNode> {
public Object jjtAccept(ApexParserVisitor visitor, Object data) {
return visitor.visit(this, data);
}
@Override
public int getModifiers() {
return node.getModifiers().getJavaModifiers();
}
@Override
public boolean isPublic() {
return (node.getModifiers().getJavaModifiers() & PUBLIC) == PUBLIC;
}
@Override
public boolean isProtected() {
return (node.getModifiers().getJavaModifiers() & PROTECTED) == PROTECTED;
}
@Override
public boolean isPrivate() {
return (node.getModifiers().getJavaModifiers() & PRIVATE) == PRIVATE;
}
@Override
public boolean isAbstract() {
return (node.getModifiers().getJavaModifiers() & ABSTRACT) == ABSTRACT;
}
@Override
public boolean isStatic() {
return (node.getModifiers().getJavaModifiers() & STATIC) == STATIC;
}
@Override
public boolean isFinal() {
return (node.getModifiers().getJavaModifiers() & FINAL) == FINAL;
}
@Override
public boolean isTransient() {
return (node.getModifiers().getJavaModifiers() & TRANSIENT) == TRANSIENT;
}
}

View File

@ -11,42 +11,26 @@ import net.sourceforge.pmd.lang.ast.Node;
public interface AccessNode extends Node {
int PUBLIC = 0x0001;
int PROTECTED = 0x0002;
int PRIVATE = 0x0004;
int ABSTRACT = 0x0008;
int STATIC = 0x0010;
int FINAL = 0x0020;
int TRANSIENT = 0x0100;
int PRIVATE = 0x0002;
int PROTECTED = 0x0004;
int STATIC = 0x0008;
int FINAL = 0x0010;
int TRANSIENT = 0x0080;
int ABSTRACT = 0x0400;
int getModifiers();
void setModifiers(int modifiers);
boolean isPublic();
void setPublic(boolean isPublic);
boolean isProtected();
void setProtected(boolean isProtected);
boolean isPrivate();
void setPrivate(boolean isPrivate);
boolean isAbstract();
void setAbstract(boolean isAbstract);
boolean isStatic();
void setStatic(boolean isStatic);
boolean isFinal();
void setFinal(boolean isFinal);
void setDefault(boolean isDefault);
boolean isDefault();
boolean isTransient();
}