org.codehaus.groovy.ast.tools

## Class PropertyNodeUtils

- java.lang.Object
- - org.codehaus.groovy.ast.tools.PropertyNodeUtils

-     public class PropertyNodeUtils
      extends java.lang.Object

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `PropertyNodeUtils()`

  - ### Method Summary

    All Methods Static Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `static int` | `adjustPropertyModifiersForMethod(PropertyNode propNode)` Fields within the AST that have no explicit visibility are deemed to be properties and represented by a PropertyNode.

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### 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