groovy.transform
@Documented @Retention(value=SOURCE) @Target(value={TYPE,METHOD,FIELD}) public @interface PackageScope
or for greater control, at the class level with one or more@
PackageScope class Bar { // package protected@
PackageScope int field // package protected; not a property@
PackageScope method(){} // package protected }
PackageScopeTarget
values:
import static groovy.transform.PackageScopeTarget.*This transformation is typically only used in conjunction with a third-party library or framework which relies upon package scoping.@
PackageScope([CLASS, FIELDS]) class Foo { // class will have package protected scope int field1, field2 // both package protected def method(){} // public }@
PackageScope(METHODS) class Bar { // public int field // treated as a property def method1(){} // package protected def method2(){} // package protected }
Modifier and Type | Optional Element and Description |
---|---|
PackageScopeTarget[] |
value |
public abstract PackageScopeTarget[] value