View Javadoc

1   package net.sourceforge.pmd.ast;
2   
3   public class AccessNode extends SimpleJavaNode {
4   
5       public static final int PUBLIC = 0x0001;
6       public static final int PROTECTED = 0x0002;
7       public static final int PRIVATE = 0x0004;
8       public static final int ABSTRACT = 0x0008;
9       public static final int STATIC = 0x0010;
10      public static final int FINAL = 0x0020;
11      public static final int SYNCHRONIZED = 0x0040;
12      public static final int NATIVE = 0x0080;
13      public static final int TRANSIENT = 0x0100;
14      public static final int VOLATILE = 0x0200;
15      public static final int STRICTFP = 0x1000;
16  
17      public AccessNode(int i) {
18          super(i);
19      }
20  
21      public AccessNode(JavaParser parser, int i) {
22          super(parser, i);
23      }
24  
25      private int modifiers;
26  
27      public void setModifiers(int m) {
28          this.modifiers = m;
29      }
30  
31      public boolean isPublic() {
32          return (modifiers & PUBLIC) != 0;
33      }
34  
35      public boolean isProtected() {
36          return (modifiers & PROTECTED) != 0;
37      }
38  
39      public boolean isPrivate() {
40          return (modifiers & PRIVATE) != 0;
41      }
42  
43      public boolean isStatic() {
44          return (modifiers & STATIC) != 0;
45      }
46  
47      public boolean isAbstract() {
48          return (modifiers & ABSTRACT) != 0;
49      }
50  
51      public boolean isFinal() {
52          return (modifiers & FINAL) != 0;
53      }
54  
55      public boolean isNative() {
56          return (modifiers & NATIVE) != 0;
57      }
58  
59      public boolean isStrictfp() {
60          return (modifiers & STRICTFP) != 0;
61      }
62  
63      public boolean isSynchronized() {
64          return (modifiers & SYNCHRONIZED) != 0;
65      }
66  
67      public boolean isTransient() {
68          return (modifiers & TRANSIENT) != 0;
69      }
70  
71      public boolean isVolatile() {
72          return (modifiers & VOLATILE) != 0;
73      }
74  
75      public void setPublic() {
76          modifiers |= PUBLIC;
77      }
78  
79      public void setPrivate() {
80          modifiers |= PRIVATE;
81      }
82  
83      public void setProtected() {
84          modifiers |= PROTECTED;
85      }
86  
87      public void setSynchronized() {
88          modifiers |= SYNCHRONIZED;
89      }
90  
91      public void setVolatile() {
92          modifiers |= VOLATILE;
93      }
94  
95      public void setAbstract() {
96          modifiers |= ABSTRACT;
97      }
98  
99      public void setStatic() {
100         modifiers |= STATIC;
101     }
102 
103     public void setTransient() {
104         modifiers |= TRANSIENT;
105     }
106 
107     public void setFinal() {
108         modifiers |= FINAL;
109     }
110 
111     public void setNative() {
112         modifiers |= NATIVE;
113     }
114 
115     public void setStrictfp() {
116         modifiers |= STRICTFP;
117     }
118 
119     /***
120      * Removes the given modifier.
121      */
122     static int removeModifier(int modifiers, int mod) {
123         return modifiers & ~mod;
124     }
125 
126     public boolean isPackagePrivate() {
127         return !isPrivate() && !isPublic() && !isProtected();
128     }
129 
130     public String collectDumpedModifiers(String prefix) {
131         String out = toString(prefix) + ":";
132         if (isPackagePrivate()) {
133             out += "(package private)";
134         }
135         if (isPrivate()) {
136             out += "(private)";
137         }
138         if (isPublic()) {
139             out += "(public)";
140         }
141         if (isProtected()) {
142             out += "(protected)";
143         }
144         if (isAbstract()) {
145             out += "(abstract)";
146         }
147         if (isStatic()) {
148             out += "(static)";
149         }
150         if (isFinal()) {
151             out += "(final)";
152         }
153         if (isSynchronized()) {
154             out += "(synchronized)";
155         }
156         if (isNative()) {
157             out += "(native)";
158         }
159         if (isStrictfp()) {
160             out += "(strict)";
161         }
162         if (isTransient()) {
163             out += "(transient)";
164         }
165         return out;
166     }
167 }