Z3
Z3_decl_kind.java
Go to the documentation of this file.
1
5package com.microsoft.z3.enumerations;
6
7import java.util.HashMap;
8import java.util.Map;
9
13public enum Z3_decl_kind {
16 Z3_OP_EQ (258),
18 Z3_OP_ITE (260),
19 Z3_OP_AND (261),
20 Z3_OP_OR (262),
21 Z3_OP_IFF (263),
22 Z3_OP_XOR (264),
23 Z3_OP_NOT (265),
25 Z3_OP_OEQ (267),
28 Z3_OP_LE (514),
29 Z3_OP_GE (515),
30 Z3_OP_LT (516),
31 Z3_OP_GT (517),
32 Z3_OP_ADD (518),
33 Z3_OP_SUB (519),
35 Z3_OP_MUL (521),
36 Z3_OP_DIV (522),
38 Z3_OP_REM (524),
39 Z3_OP_MOD (525),
58 Z3_OP_BNUM (1024),
59 Z3_OP_BIT1 (1025),
60 Z3_OP_BIT0 (1026),
61 Z3_OP_BNEG (1027),
62 Z3_OP_BADD (1028),
63 Z3_OP_BSUB (1029),
64 Z3_OP_BMUL (1030),
75 Z3_OP_ULEQ (1041),
76 Z3_OP_SLEQ (1042),
77 Z3_OP_UGEQ (1043),
78 Z3_OP_SGEQ (1044),
79 Z3_OP_ULT (1045),
80 Z3_OP_SLT (1046),
81 Z3_OP_UGT (1047),
82 Z3_OP_SGT (1048),
83 Z3_OP_BAND (1049),
84 Z3_OP_BOR (1050),
85 Z3_OP_BNOT (1051),
86 Z3_OP_BXOR (1052),
88 Z3_OP_BNOR (1054),
98 Z3_OP_BSHL (1064),
267
268 private final int intValue;
269
271 this.intValue = v;
272 }
273
274 // Cannot initialize map in constructor, so need to do it lazily.
275 // Easiest thread-safe way is the initialization-on-demand holder pattern.
276 private static class Z3_decl_kind_MappingHolder {
277 private static final Map<Integer, Z3_decl_kind> intMapping = new HashMap<>();
278 static {
279 for (Z3_decl_kind k : Z3_decl_kind.values())
280 intMapping.put(k.toInt(), k);
281 }
282 }
283
284 public static final Z3_decl_kind fromInt(int v) {
285 Z3_decl_kind k = Z3_decl_kind_MappingHolder.intMapping.get(v);
286 if (k != null) return k;
287 throw new IllegalArgumentException("Illegal value " + v + " for Z3_decl_kind");
288 }
289
290 public final int toInt() { return this.intValue; }
291}
292
static final Z3_decl_kind fromInt(int v)