PropertyNodeUtils (Groovy 5.0.6)
Description: declaration: package: org.codehaus.groovy.ast.tools, class: PropertyNodeUtils

Package org.codehaus.groovy.ast.tools

# Class PropertyNodeUtils

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

public class PropertyNodeUtils extends Object

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `PropertyNodeUtils()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `static int`
  `adjustPropertyModifiersForMethod(PropertyNode node)`
  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 Details

  - ### PropertyNodeUtils

    public PropertyNodeUtils()

- ## Method Details

  - ### adjustPropertyModifiersForMethod

    public static int adjustPropertyModifiersForMethod(PropertyNode node)
    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`.
    Parameters:
      `node` - the original property node
    Returns:
      the modifiers which make sense for an accessor method
    Since:
      2.4.8