# All Classes

All Classes Interface Summary Class Summary Enum Summary Exception Summary Annotation Types Summary
At: The `At` annotation selects one or multiple instructions (depending on the circumstances no instructions can also be matched) based on the parameters it was given to.
At.Shift: An enumeration defining the available modes of shifting as consumed by `At.shift()`.
CallbackInfo
CallbackInfoReturnable<R>
Cancellable: The Cancellable annotation can be applied on arguments of a `Redirect` handler to allow the possibility to cancel large quantities of logic within the injected method.
CancellationException
CanonicalOverwrite: Abstract
Constant: The `Constant` annotation marks a single constant value which should be selected.
Desc: `Desc` is a metadata annotation to specify a specific class member without the potential of typos.
Inject: The `Inject` annotation can be applied to methods that need to be called by the given target method.
LocalCapture
Mixin: The `Mixin` annotation can be applied on classes to mark them as a mixin.
ModifyArg: The `ModifyArg` annotation allows to apply a function on a single argument used to call a method.
ModifyConstant: The `ModifyConstant` annotation allows to apply a function on a single constant after pushing the constant onto the operand stack.
ModifyReturnValue: The `ModifyReturnValue` annotation allows to apply a function on the return value of a method.
ModifyVariable: The `ModifyVariable` annotation allows to apply a function on a single local variable at an arbitrary point during execution.
Mutable: `Mutable` may only be applied to `shadowed` fields or on accessor methods.
Operation<T>
Overwrite: `Overwrite` can be applied on methods that need to be explicitly overwritten.
Redirect: The `Redirect` annotation redirects a method call to the mixin implementation.
Shadow: The `Shadow` annotation can be put on methods and fields that are present in the target class without overwriting them.
Slice: The `Slice` annotation denotes a specific area in which an injection point may be placed in.
Unique: The `Unique` annotation guarantees, when applied to a class member, that the member it was applied on does not cause any modifications to class members of the target classes.
WrapOperation: The `WrapOperation` annotation defines an injector which is capable of wrapping a single instruction and modify it.
WrapOperationRuntime