ArchDetail

sealed class ArchDetail(source)

Sealed class representing architecture-specific instruction details.

Provides type-safe access to architecture-specific information about instructions.

Example usage:

when (val archDetail = instruction.detail?.archDetail) {
is ArchDetail.AArch64 -> {
println("Condition: ${archDetail.detail.cc}")
println("Updates flags: ${archDetail.detail.updateFlags}")
}
is ArchDetail.X86 -> {
println("Operand count: ${archDetail.detail.operands.size}")
}
else -> println("No arch-specific details")
}

Inheritors

Types

Link copied to clipboard
data class AArch64(val detail: AArch64InstructionDetail) : ArchDetail

AArch64 (ARM64) specific details

Link copied to clipboard
data class ARM(val detail: ArmInstructionDetail) : ArchDetail

ARM (32-bit) specific details

Link copied to clipboard
data class Generic(val detail: GenericDetail) : ArchDetail

Generic/unknown architecture details

Link copied to clipboard
data class MIPS(val detail: GenericDetail) : ArchDetail

MIPS specific details

Link copied to clipboard
data class PPC(val detail: GenericDetail) : ArchDetail

PowerPC specific details

Link copied to clipboard
data class SPARC(val detail: GenericDetail) : ArchDetail

SPARC specific details

Link copied to clipboard
data class SystemZ(val detail: GenericDetail) : ArchDetail

SystemZ specific details

Link copied to clipboard
data class X86(val detail: X86InstructionDetail) : ArchDetail

X86/X86-64 specific details