added class fields to outline
[phpeclipse.git] / net.sourceforge.phpeclipse / src / net / sourceforge / phpeclipse / obfuscator / PHPIdentifier.java
1 package net.sourceforge.phpeclipse.obfuscator;
2
3 /**
4  * @author khartlage
5  *
6  */
7 public class PHPIdentifier {
8
9   public final static int CLASS = 1;
10   public final static int FUNCTION = 2;
11   public final static int METHOD = 4;
12   public final static int VARIABLE = 3;
13   public final static int DEFINE = 5;
14         public final static int CONSTRUCTOR = 6;
15   private String fIdentifier;
16
17   private int fType;
18
19   public PHPIdentifier(String identifier, int type) {
20     fType = type;
21     fIdentifier = identifier;
22   }
23
24   /* (non-Javadoc)
25    * @see java.lang.Object#equals(java.lang.Object)
26    */
27   public boolean equals(Object obj) {
28     if (!(obj instanceof PHPIdentifier)) {
29       return false;
30     }
31     return ((PHPIdentifier) obj).fType == fType && ((PHPIdentifier) obj).fIdentifier.equals(fIdentifier);
32   }
33
34   public String getIdentifier() {
35     return fIdentifier;
36   }
37
38   public int getType() {
39     return fType;
40   }
41
42   public boolean isClass() {
43     return fType == CLASS;
44   }
45
46   public boolean isFunction() {
47     return fType == FUNCTION;
48   }
49
50   public boolean isVariable() {
51     return fType == VARIABLE;
52   }
53
54   public boolean isMethod() {
55     return fType == METHOD;
56   }
57
58   public boolean isDefine() {
59     return fType == DEFINE;
60   }
61
62         public boolean isConstructor() {
63                 return fType == CONSTRUCTOR;
64         }
65         
66   public void setIdentifier(String fIdentifier) {
67     this.fIdentifier = fIdentifier;
68   }
69
70   public void setType(int fType) {
71     this.fType = fType;
72   }
73
74   /* (non-Javadoc)
75    * @see java.lang.Object#toString()
76    */
77   public String toString() {
78     switch (fType) {
79       case CLASS :
80         return "class - ";
81                         case CONSTRUCTOR :
82                                 return "constructor - ";
83       case DEFINE :
84         return "define - ";
85       case FUNCTION :
86         return "function - ";
87       case METHOD :
88         return "method - ";
89       case VARIABLE :
90         return "variable - ";
91     }
92     return "";
93   }
94
95 }