MCPcopy Create free account
hub / github.com/capstone-engine/capstone / getOptInfo

Method getOptInfo

bindings/java/capstone/Capstone.java:161–214  ·  view source on GitHub ↗
(_cs_detail detail)

Source from the content-addressed store, hash-verified

159 }
160
161 private OpInfo getOptInfo(_cs_detail detail) {
162 OpInfo op_info = null;
163
164 switch (this.arch) {
165 case CS_ARCH_ARM:
166 detail.arch.setType(Arm.UnionOpInfo.class);
167 detail.arch.read();
168 op_info = new Arm.OpInfo((Arm.UnionOpInfo) detail.arch.arm);
169 break;
170 case CS_ARCH_ARM64:
171 detail.arch.setType(Arm64.UnionOpInfo.class);
172 detail.arch.read();
173 op_info = new Arm64.OpInfo((Arm64.UnionOpInfo) detail.arch.arm64);
174 break;
175 case CS_ARCH_MIPS:
176 detail.arch.setType(Mips.UnionOpInfo.class);
177 detail.arch.read();
178 op_info = new Mips.OpInfo((Mips.UnionOpInfo) detail.arch.mips);
179 break;
180 case CS_ARCH_X86:
181 detail.arch.setType(X86.UnionOpInfo.class);
182 detail.arch.read();
183 op_info = new X86.OpInfo((X86.UnionOpInfo) detail.arch.x86);
184 break;
185 case CS_ARCH_SPARC:
186 detail.arch.setType(Sparc.UnionOpInfo.class);
187 detail.arch.read();
188 op_info = new Sparc.OpInfo((Sparc.UnionOpInfo) detail.arch.sparc);
189 break;
190 case CS_ARCH_SYSZ:
191 detail.arch.setType(Systemz.UnionOpInfo.class);
192 detail.arch.read();
193 op_info = new Systemz.OpInfo((Systemz.UnionOpInfo) detail.arch.sysz);
194 break;
195 case CS_ARCH_PPC:
196 detail.arch.setType(Ppc.UnionOpInfo.class);
197 detail.arch.read();
198 op_info = new Ppc.OpInfo((Ppc.UnionOpInfo) detail.arch.ppc);
199 break;
200 case CS_ARCH_XCORE:
201 detail.arch.setType(Xcore.UnionOpInfo.class);
202 detail.arch.read();
203 op_info = new Xcore.OpInfo((Xcore.UnionOpInfo) detail.arch.xcore);
204 break;
205 case CS_ARCH_M680X:
206 detail.arch.setType(M680x.UnionOpInfo.class);
207 detail.arch.read();
208 op_info = new M680x.OpInfo((M680x.UnionOpInfo) detail.arch.m680x);
209 break;
210 default:
211 }
212
213 return op_info;
214 }
215
216 public int opCount(int type) {
217 return cs.cs_op_count(csh, raw.getPointer(), type);

Callers 1

CsInsnMethod · 0.95

Calls 2

setTypeMethod · 0.80
readMethod · 0.45

Tested by

no test coverage detected