# Package org.spongepowered.asm.util.asm

Utilities, abstractions and specialised subclasses used by Mixin for interacting with ASM.

- Interface Summary
  Interface | Description
  --- | ---
  IAnnotatedElement | Interface for objects which can be annotated since main classes may need to read info from mirror annotations in the AP
  IAnnotationHandle | Interface for annotation handle since some classes may need to read info from both ASM `AnnotationNode`s at runtime and mirror annotations in the AP at compile time.

- Class Summary
  Class | Description
  --- | ---
  ASM | Utility methods for determining ASM version and other version-specific shenanigans
  ClassNodeAdapter | Adapter for ClassNode to access members added after ASM 5
  MarkerNode | A label node used as a marker in the bytecode.
  MethodNodeEx | MethodNode with some extra convenience functionality
  MethodVisitorEx | MethodVisitor with some extra convenience functionality
  MixinVerifier | Verifier which handles class info lookups via `ClassInfo`