Class PropertyNodeUtils


  • public class PropertyNodeUtils
    extends Object
    • Constructor Detail

      • PropertyNodeUtils

        public PropertyNodeUtils()
    • Method Detail

      • 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 (this includes VOLATILE and TRANSIENT) but other modifiers are carried over, for example static.
        Parameters:
        propNode - the original property node
        Returns:
        the modifiers which make sense for an accessor method