## Uses of Interface
org.apache.tapestry5.plastic.PlasticField

- Packages that use PlasticField
  Package | Description
  --- | ---
  org.apache.tapestry5.internal.plastic | [INTERNAL USE ONLY] Plastic implementation details; API subject to change
  org.apache.tapestry5.internal.services | [INTERNAL USE ONLY] internal service classes; API subject to change
  org.apache.tapestry5.internal.transform | [INTERNAL USE ONLY] component class transformation implementation classes; API subject to change.
  org.apache.tapestry5.plastic | Plastic, Tapestry's component class transformation library based on ASM
  org.apache.tapestry5.services.transform | Support for component class transformation.

- - ### Uses of PlasticField in org.apache.tapestry5.internal.plastic

    Methods in org.apache.tapestry5.internal.plastic that return PlasticField
    Modifier and Type | Method | Description
    --- | --- | ---
    `PlasticField` | PlasticClassImpl.`introduceField​(Class fieldType, String suggestedName)` |
    `PlasticField` | PlasticClassImpl.`introduceField​(String className, String suggestedName)` |

    Methods in org.apache.tapestry5.internal.plastic that return types with arguments of type PlasticField
    Modifier and Type | Method | Description
    --- | --- | ---
    `List<PlasticField>` | PlasticClassImpl.`getAllFields()` |
    `<T extends Annotation> List<PlasticField>` | PlasticClassImpl.`getFieldsWithAnnotation​(Class<T> annotationType)` |
    `List<PlasticField>` | PlasticClassImpl.`getUnclaimedFields()` |

    Methods in org.apache.tapestry5.internal.plastic with parameters of type PlasticField
    Modifier and Type | Method | Description
    --- | --- | ---
    `InstructionBuilder` | InstructionBuilderImpl.`getField​(PlasticField field)` |
    `PlasticClass` | PlasticClassImpl.`proxyInterface​(Class interfaceType, PlasticField field)` |

  - ### Uses of PlasticField in org.apache.tapestry5.internal.services

    Methods in org.apache.tapestry5.internal.services with parameters of type PlasticField
    Modifier and Type | Method | Description
    --- | --- | ---
    `boolean` | AssetInjectionProvider.`provideInjection​(PlasticField field, ObjectLocator locator, MutableComponentModel componentModel)` |
    `boolean` | BlockInjectionProvider.`provideInjection​(PlasticField field, ObjectLocator locator, MutableComponentModel componentModel)` |
    `boolean` | CommonResourcesInjectionProvider.`provideInjection​(PlasticField field, ObjectLocator locator, MutableComponentModel componentModel)` |
    `boolean` | DefaultInjectionProvider.`provideInjection​(PlasticField field, ObjectLocator locator, MutableComponentModel componentModel)` |
    `boolean` | ServiceInjectionProvider.`provideInjection​(PlasticField field, ObjectLocator locator, MutableComponentModel componentModel)` |

  - ### Uses of PlasticField in org.apache.tapestry5.internal.transform

    Methods in org.apache.tapestry5.internal.transform with parameters of type PlasticField
    Modifier and Type | Method | Description
    --- | --- | ---
    `boolean` | InjectNamedProvider.`provideInjection​(PlasticField field, ObjectLocator locator, MutableComponentModel componentModel)` |

  - ### Uses of PlasticField in org.apache.tapestry5.plastic

    Methods in org.apache.tapestry5.plastic that return PlasticField
    Modifier and Type | Method | Description
    --- | --- | ---
    `PlasticField` | PlasticField.`claim​(Object tag)` | Claims the field, used to indicate that the field is "processed".
    `PlasticField` | PlasticField.`createAccessors​(PropertyAccessType accessType)` | Creates access to the field, using the default property name derived from the name of the field.
    `PlasticField` | PlasticField.`createAccessors​(PropertyAccessType accessType, String propertyName)` | Creates accessors, possibly replacing existing methods (or overriding methods from a super class).
    `PlasticField` | PlasticField.`inject​(Object value)` | Converts the field to be read-only, and provide the indicated value.
    `PlasticField` | PlasticField.`injectComputed​(ComputedValue<?> computedValue)` | Converts the field to be read-only, and provide the value, which is computed indirectly inside the class' constructor.
    `PlasticField` | PlasticField.`injectFromInstanceContext()` | As with `inject(Object)`, but the value is extracted from the `InstanceContext`.
    `PlasticField` | PlasticClass.`introduceField​(Class fieldType, String suggestedName)` | Convenience method that uses a Java class rather than a type name.
    `PlasticField` | PlasticClass.`introduceField​(String typeName, String suggestedName)` | Introduces a new private field into the class.
    `<F> PlasticField` | PlasticField.`setComputedConduit​(ComputedValue<FieldConduit<F>> computedConduit)` | Sets the conduit for the field to a value computed when the class is instantiated
    `<F> PlasticField` | PlasticField.`setConduit​(FieldConduit<F> conduit)` | Intercepts all access to the field, replacing such access with calls on the conduit.

    Methods in org.apache.tapestry5.plastic that return types with arguments of type PlasticField
    Modifier and Type | Method | Description
    --- | --- | ---
    `List<PlasticField>` | PlasticClass.`getAllFields()` | Returns all non-introduced fields, in sorted order by name.
    `<T extends Annotation> List<PlasticField>` | PlasticClass.`getFieldsWithAnnotation​(Class<T> annotationType)` | Matches all fields (claimed or not) that have the given annotation.
    `List<PlasticField>` | PlasticClass.`getUnclaimedFields()` | Returns all unclaimed fields, in sorted order by name.

    Methods in org.apache.tapestry5.plastic with parameters of type PlasticField
    Modifier and Type | Method | Description
    --- | --- | ---
    `PlasticMethod` | PlasticMethod.`delegateTo​(PlasticField field)` | Changes the implementation of the method to delegate to the provided field.
    `InstructionBuilder` | InstructionBuilder.`getField​(PlasticField field)` | Loads an instance or static field onto the stack.
    `PlasticClass` | PlasticClass.`proxyInterface​(Class interfaceType, PlasticField field)` | Introduces the interface, and then invokes `PlasticMethod.delegateTo(PlasticField)` on each method defined by the interface.

  - ### Uses of PlasticField in org.apache.tapestry5.services.transform

    Methods in org.apache.tapestry5.services.transform with parameters of type PlasticField
    Modifier and Type | Method | Description
    --- | --- | ---
    `boolean` | InjectionProvider2.`provideInjection​(PlasticField field, ObjectLocator locator, MutableComponentModel componentModel)` | Perform the injection, if possible.