View Javadoc
1   /*
2    * Themis: Java Project Framework
3    * Copyright 2012-2026. Tony Washer
4    *
5    * Licensed under the Apache License, Version 2.0 (the "License"); you may not
6    * use this file except in compliance with the License.  You may obtain a copy
7    * of the License at
8    *
9    *   http://www.apache.org/licenses/LICENSE-2.0
10   *
11   * Unless required by applicable law or agreed to in writing, software
12   * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
13   * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the
14   * License for the specific language governing permissions and limitations under
15   * the License.
16   */
17  package io.github.tonywasher.joceanus.themis.xanalysis.solver.reflect;
18  
19  /**
20   * Well-known java.lang classes.
21   */
22  public enum ThemisXAnalysisReflectJavaLang {
23      /**
24       * Boolean.
25       */
26      BOOLEAN("Boolean"),
27  
28      /**
29       * Byte.
30       */
31      BYTE("Byte"),
32  
33      /**
34       * Character.
35       */
36      CHARACTER("Character"),
37  
38      /**
39       * Class.
40       */
41      CLASS("Class"),
42  
43      /**
44       * ClassLoader.
45       */
46      CLASSLOADER("ClassLoader"),
47  
48      /**
49       * Double.
50       */
51      DOUBLE("Double"),
52  
53      /**
54       * Enum.
55       */
56      ENUM("Enum"),
57  
58      /**
59       * Float.
60       */
61      FLOAT("Float"),
62  
63      /**
64       * Integer.
65       */
66      INTEGER("Integer"),
67  
68      /**
69       * Long.
70       */
71      LONG("Long"),
72  
73      /**
74       * Math.
75       */
76      MATH("Math"),
77  
78      /**
79       * Number.
80       */
81      NUMBER("Number"),
82  
83      /**
84       * Object.
85       */
86      OBJECT("Object"),
87  
88      /**
89       * Package.
90       */
91      PACKAGE("Package"),
92  
93      /**
94       * Process.
95       */
96      PROCESS("Process"),
97  
98      /**
99       * ProcessBuilder.
100      */
101     PROCESSBUILDER("ProcessBuilder"),
102 
103     /**
104      * Runtime.
105      */
106     RUNTIME("Object"),
107 
108     /**
109      * SecurityManager.
110      */
111     SECURITYMANAGER("SecurityManager"),
112 
113     /**
114      * Short.
115      */
116     SHORT("Short"),
117 
118     /**
119      * StackTraceElement.
120      */
121     STACKTRACEELEMENT("StackTraceElement"),
122 
123     /**
124      * String.
125      */
126     STRING("String"),
127 
128     /**
129      * StringBuffer.
130      */
131     STRINGBUFFER("StringBuffer"),
132 
133     /**
134      * StringBuilder.
135      */
136     STRINGBUILDER("StringBuilder"),
137 
138     /**
139      * System.
140      */
141     SYSTEM("System"),
142 
143     /**
144      * Thread.
145      */
146     THREAD("Thread"),
147 
148     /**
149      * ThreadGroup.
150      */
151     THREADGROUP("ThreadGroup"),
152 
153     /**
154      * ThreadLocal.
155      */
156     THREADLOCAL("ThreadLocal"),
157 
158     /**
159      * Throwable.
160      */
161     THROWABLE("Throwable"),
162 
163     /**
164      * Void.
165      */
166     VOID("Void"),
167 
168     /**
169      * Appendable.
170      */
171     APPENDABLE("Appendable"),
172 
173     /**
174      * AutoCloseable.
175      */
176     AUTOCLOSEABLE("AutoCloseable"),
177 
178     /**
179      * CharSequence.
180      */
181     CHARSEQ("CharSequence"),
182 
183     /**
184      * Cloneable.
185      */
186     CLONEABLE("Cloneable"),
187 
188     /**
189      * Comparable.
190      */
191     COMPARABLE("Comparable"),
192 
193     /**
194      * Iterable.
195      */
196     ITERABLE("Iterable"),
197 
198     /**
199      * Readable.
200      */
201     READABLE("Readable"),
202 
203     /**
204      * Runnable.
205      */
206     RUNNABLE("Runnable"),
207 
208     /**
209      * Exception.
210      */
211     EXCEPT("Exception"),
212 
213     /**
214      * ArithmeticException.
215      */
216     ARITHMETICEXC("ArithmeticException"),
217 
218     /**
219      * IllegalArgumentException.
220      */
221     ILLEGALARGEXC("IllegalArgumentException"),
222 
223     /**
224      * IllegalStateException.
225      */
226     ILLEGALSTATEEXC("IllegalStateException"),
227 
228     /**
229      * InterruptedException.
230      */
231     INTERRUPTEDEXC("InterruptedException"),
232 
233     /**
234      * NumberFormatException.
235      */
236     NUMBERFORMATEXC("NumberFormatException"),
237 
238     /**
239      * RunTimeException.
240      */
241     RUNTIMEXC("RuntimeException"),
242 
243     /**
244      * UnsupportedOperationException.
245      */
246     UNSUPPORTEDEXC("UnsupportedOperationException"),
247 
248     /**
249      * Deprecated.
250      */
251     DEPRECATED("Deprecated"),
252 
253     /**
254      * FunctionalInterface.
255      */
256     FUNCTIONALINTERFACE("FunctionalInterface"),
257 
258     /**
259      * Override.
260      */
261     OVERRIDE("Override"),
262 
263     /**
264      * SuppressWarnings.
265      */
266     SUPPRESSWARNINGS("SuppressWarnings");
267 
268     /**
269      * The class name.
270      */
271     private final String theName;
272 
273     /**
274      * Constructor.
275      *
276      * @param pName the className
277      */
278     ThemisXAnalysisReflectJavaLang(final String pName) {
279         theName = pName;
280     }
281 
282     /**
283      * Obtain the className.
284      *
285      * @return the name
286      */
287     String getName() {
288         return theName;
289     }
290 
291     @Override
292     public String toString() {
293         return getName();
294     }
295 }