Class PropertyNodeUtils


public class PropertyNodeUtils extends Object
  • Constructor Details

    • PropertyNodeUtils

      public PropertyNodeUtils()
  • Method Details

    • adjustPropertyModifiersForMethod

      public static int adjustPropertyModifiersForMethod(PropertyNode propNode)
      Fields within the AST that have no explicit visibility are deemed to be properties and represented by a PropertyNode. The Groovy compiler creates accessor methods and a backing field for such property nodes. During this process, all modifiers from the property are carried over to the backing field (so a property marked as transient will have a transient backing field) but when creating the accessor methods we don't carry over modifier values which don't make sense for methods (such as volatile and transient) but other modifiers are carried over, for example static.
      propNode - the original property node
      the modifiers which make sense for an accessor method