Class NameMangler

java.lang.Object
org.aspectj.weaver.NameMangler

public class NameMangler extends Object
  • Field Details

  • Constructor Details

    • NameMangler

      public NameMangler()
  • Method Details

    • isSyntheticMethod

      public static boolean isSyntheticMethod​(String methodName, boolean declaredInAspect)
    • perObjectInterfaceGet

      public static String perObjectInterfaceGet​(UnresolvedType aspectType)
    • perObjectInterfaceSet

      public static String perObjectInterfaceSet​(UnresolvedType aspectType)
    • perObjectInterfaceField

      public static String perObjectInterfaceField​(UnresolvedType aspectType)
    • perTypeWithinFieldForTarget

      public static String perTypeWithinFieldForTarget​(UnresolvedType aspectType)
    • perTypeWithinLocalAspectOf

      public static String perTypeWithinLocalAspectOf​(UnresolvedType aspectType)
    • itdAtDeclareParentsField

      public static String itdAtDeclareParentsField​(UnresolvedType aspectType, UnresolvedType itdType)
    • privilegedAccessMethodForMethod

      public static String privilegedAccessMethodForMethod​(String name, UnresolvedType objectType, UnresolvedType aspectType)
    • privilegedAccessMethodForFieldGet

      public static String privilegedAccessMethodForFieldGet​(String name, UnresolvedType objectType, UnresolvedType aspectType)
      Create the old style (<1.6.9) format getter name which includes the aspect requesting access and the type containing the field in the name of the type. At 1.6.9 and above the name is simply ajc$get$<fieldname>
    • privilegedAccessMethodForFieldSet

      public static String privilegedAccessMethodForFieldSet​(String name, UnresolvedType objectType, UnresolvedType aspectType)
      Create the old style (<1.6.9) format setter name which includes the aspect requesting access and the type containing the field in the name of the type. At 1.6.9 and above the name is simply ajc$set$<fieldname>
    • inlineAccessMethodForMethod

      public static String inlineAccessMethodForMethod​(String name, UnresolvedType objectType, UnresolvedType aspectType)
    • inlineAccessMethodForFieldGet

      public static String inlineAccessMethodForFieldGet​(String name, UnresolvedType objectType, UnresolvedType aspectType)
    • inlineAccessMethodForFieldSet

      public static String inlineAccessMethodForFieldSet​(String name, UnresolvedType objectType, UnresolvedType aspectType)
    • adviceName

      public static String adviceName​(String nameAsIdentifier, AdviceKind kind, int adviceSeqNumber, int pcdHash)
      The name of methods corresponding to advice declarations Of the form: "ajc$[AdviceKind]$[AspectName]$[NumberOfAdviceInAspect]$[PointcutHash]"
    • interFieldInterfaceField

      public static String interFieldInterfaceField​(UnresolvedType aspectType, UnresolvedType interfaceType, String name)
      This field goes on top-most implementers of the interface the field is declared onto
    • interFieldInterfaceSetter

      public static String interFieldInterfaceSetter​(UnresolvedType aspectType, UnresolvedType interfaceType, String name)
      This instance method goes on the interface the field is declared onto as well as its top-most implementors
    • interFieldInterfaceGetter

      public static String interFieldInterfaceGetter​(UnresolvedType aspectType, UnresolvedType interfaceType, String name)
      This instance method goes on the interface the field is declared onto as well as its top-most implementors
    • interFieldSetDispatcher

      public static String interFieldSetDispatcher​(UnresolvedType aspectType, UnresolvedType onType, String name)
      This static method goes on the aspect that declares the inter-type field
    • interFieldGetDispatcher

      public static String interFieldGetDispatcher​(UnresolvedType aspectType, UnresolvedType onType, String name)
      This static method goes on the aspect that declares the inter-type field
    • interFieldClassField

      public static String interFieldClassField​(int modifiers, UnresolvedType aspectType, UnresolvedType classType, String name)
      This field goes on the class the field is declared onto
    • interFieldInitializer

      public static String interFieldInitializer​(UnresolvedType aspectType, UnresolvedType classType, String name)
      This static void method goes on the aspect that declares the inter-type field and is called from the appropriate place (target's initializer, or clinit, or topmost implementer's inits), to initialize the field;
    • interMethod

      public static String interMethod​(int modifiers, UnresolvedType aspectType, UnresolvedType classType, String name)
      This method goes on the target type of the inter-type method. (and possibly the topmost-implemeters, if the target type is an interface)
    • interMethodDispatcher

      public static String interMethodDispatcher​(UnresolvedType aspectType, UnresolvedType classType, String name)
      This static method goes on the declaring aspect of the inter-type method.
    • interMethodBody

      public static String interMethodBody​(UnresolvedType aspectType, UnresolvedType classType, String name)
      This static method goes on the declaring aspect of the inter-type method.
    • preIntroducedConstructor

      public static String preIntroducedConstructor​(UnresolvedType aspectType, UnresolvedType targetType)
      This static method goes on the declaring aspect of the inter-type constructor.
    • postIntroducedConstructor

      public static String postIntroducedConstructor​(UnresolvedType aspectType, UnresolvedType targetType)
      This static method goes on the declaring aspect of the inter-type constructor.
    • superDispatchMethod

      public static String superDispatchMethod​(UnresolvedType classType, String name)
      This static method goes on the target class of the inter-type method.
    • protectedDispatchMethod

      public static String protectedDispatchMethod​(UnresolvedType classType, String name)
      This static method goes on the target class of the inter-type method.
    • makeName

      public static String makeName​(String s1, String s2, String s3)
    • makeName

      public static String makeName​(String s1, String s2, String s3, String s4)
    • cflowStack

      public static String cflowStack​(CrosscuttingMembers xcut)
    • cflowCounter

      public static String cflowCounter​(CrosscuttingMembers xcut)
    • makeClosureClassName

      public static String makeClosureClassName​(UnresolvedType enclosingType, String suffix)
    • aroundShadowMethodName

      public static String aroundShadowMethodName​(Member shadowSig, String suffixTag)
    • aroundAdviceMethodName

      public static String aroundAdviceMethodName​(Member shadowSig, String suffixTag)
    • getExtractableName

      public static String getExtractableName​(Member shadowSignature)
    • proceedMethodName

      public static String proceedMethodName​(String adviceMethodName)