# Package org.spongepowered.asm.mixin.transformer

Internal mixin transformation pipeline classes.

Interface Summary
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
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
MixinHooks
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
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