# Package org.spongepowered.asm.mixin.transformer

Internal mixin transformation pipeline classes.

- Interface Summary
  Interface | Description
  --- | ---
  IMixinTransformer | Transformation engine
  IMixinTransformerFactory | Factory for the mixin transformer, concrete instances of this class are only provided to services since only the service should be able to decide when the mixin transformer is initialised.

- Class Summary
  Class | Description
  --- | ---
  ActivityStack | Tracker for processors which want to express their activity stack on crash in a user-readable way.
  ClassInfo | Information about a class, used as a way of keeping track of class hierarchy information needed to support more complex mixin behaviour such as detached superclass and mixin inheritance.
  ClassInfo.FrameData | Information about frames in a method
  Config | Handle for marshalling mixin configs outside of the transformer package
  MixinClassGenerator | Handles delegation of class generation tasks to the extensions
  MixinTargetContext | This object keeps track of data for applying a mixin to a specific target class during a mixin application.
  SyntheticClassInfo | Information bundle about a synthetic class provided by Mixin

- Enum Summary
  Enum | Description
  --- | ---
  ClassInfo.SearchType | Search type for the findInHierarchy methods, replaces a boolean flag which made calling code difficult to read
  ClassInfo.Traversal | To all intents and purposes, the "real" class hierarchy and the mixin class hierarchy exist in parallel, this means that for some hierarchy validation operations we need to walk across to the other hierarchy in order to allow meaningful validation to occur.
  ClassInfo.TypeLookup | When using `ClassInfo.forType`, determines whether an array type should be returned as declared (eg.
  MixinInheritanceTracker |