diff --git a/pmd-apex/src/main/java/net/sourceforge/pmd/lang/apex/ast/ASTModifierNode.java b/pmd-apex/src/main/java/net/sourceforge/pmd/lang/apex/ast/ASTModifierNode.java index 197eab9d68..9de5ad16f4 100644 --- a/pmd-apex/src/main/java/net/sourceforge/pmd/lang/apex/ast/ASTModifierNode.java +++ b/pmd-apex/src/main/java/net/sourceforge/pmd/lang/apex/ast/ASTModifierNode.java @@ -5,7 +5,7 @@ package net.sourceforge.pmd.lang.apex.ast; import apex.jorje.semantic.ast.modifier.ModifierNode; -public class ASTModifierNode extends AbstractApexNode { +public class ASTModifierNode extends AbstractApexNode implements AccessNode { public ASTModifierNode(ModifierNode modifierNode) { super(modifierNode); @@ -19,4 +19,44 @@ public class ASTModifierNode extends AbstractApexNode { 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; + } } diff --git a/pmd-apex/src/main/java/net/sourceforge/pmd/lang/apex/ast/AccessNode.java b/pmd-apex/src/main/java/net/sourceforge/pmd/lang/apex/ast/AccessNode.java index d1f934a8a9..dd50c7fbfd 100644 --- a/pmd-apex/src/main/java/net/sourceforge/pmd/lang/apex/ast/AccessNode.java +++ b/pmd-apex/src/main/java/net/sourceforge/pmd/lang/apex/ast/AccessNode.java @@ -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(); }